Danfoss Comfort Contour Pro Programming guide [ru]

СИСТЕМА Comfort Contour Pro
Автоматизированное Рабочее Место LanMon
Руководство оператора
www.danfoss.ru
DANFOSS 01.2017
версия 4.13
Содержание .............................................................................................................................................. 2
Общее описание системы LanMon ........................................................................................................ 4
Установка ................................................................................................................................................. 5
Совместимость ........................................................................................................................................ 6
Лицензирование ...................................................................................................................................... 6
Обновление лицензии ......................................................................................................................... 7
Поддержка ............................................................................................................................................... 8
Менеджер проектов .............................................................................................................................. 10
Проект ................................................................................................................................................ 11
Настройки менеджера проектов ...................................................................................................... 12
Создание нового проекта ................................................................................................................. 13
Создание нового проекта на базе существующего ........................................................................ 13
Импорт существующего проекта .................................................................................................... 13
Архивирование проекта ................................................................................................................... 14
Редактирование проекта ................................................................................................................... 14
Выполнение проекта ......................................................................................................................... 14
Перенос проекта на другой компьютер .......................................................................................... 15
Запуск готового проекта оператором .............................................................................................. 15
Автоматический запуск готового проекта при включении компьютера ..................................... 15
Операторы .............................................................................................................................................. 15
Работа с операторами из программы на скрипте ........................................................................... 17
Драйверы оборудования для каналов тип 1 ....................................................................................... 18
Управление драйверами ................................................................................................................... 21
Общие настройки .............................................................................................................................. 22
Программная поддержка .................................................................................................................. 22
Каналы тип 1 .......................................................................................................................................... 24
Каналы тип 2 .......................................................................................................................................... 28
Графики .................................................................................................................................................. 39
Вкладка «Графики» ........................................................................................................................... 40
Вкладка «Значения» .......................................................................................................................... 41
Вкладка «Настройки» ....................................................................................................................... 42
Вкладка «Дата/время» ...................................................................................................................... 44
Управление просмотром .................................................................................................................. 44
Построение графика по функции .................................................................................................... 45
Поддержка в скрипте ........................................................................................................................ 46
Журнал событий .................................................................................................................................... 49
Общие настройки журнала событий ............................................................................................... 51
Отчет по журналу событий .............................................................................................................. 52
Отчет по срабатываниям .................................................................................................................. 54
Работа с журналом событий из программы на скрипте ................................................................ 56
Дискретные алармы .............................................................................................................................. 59
Поддержка в скрипте ........................................................................................................................ 62
Аналоговые алармы .............................................................................................................................. 64
Создание аналогового аларма по каналу ........................................................................................ 67
Создание аналогового аларма по функции ..................................................................................... 69
Поддержка в скрипте ........................................................................................................................ 69
Программные алармы ........................................................................................................................... 71
Создание программного аларма ...................................................................................................... 73
Поддержка в скрипте ........................................................................................................................ 75
Маскирование алармов ......................................................................................................................... 75
Окно мониторинга алармов ................................................................................................................. 76
Поддержка в скрипте ........................................................................................................................ 78
Окно тревожных сообщений ................................................................................................................ 78
Поддержка в скрипте ........................................................................................................................ 79
Группы каналов ..................................................................................................................................... 81
Программы на скриптовых языках...................................................................................................... 84
Доступ к базам данных ......................................................................................................................... 86
Автопилоты ........................................................................................................................................... 87
Отчет по потреблению ресурсов ......................................................................................................... 89
Отчет по работе оборудования ............................................................................................................ 92
Генератор отчетов ................................................................................................................................. 94
Библиотеки картинок ............................................................................................................................ 96
Набор состояний ................................................................................................................................... 98
Карты .................................................................................................................................................... 101
Список карт...................................................................................................................................... 103
Отображаемые объекты карты ...................................................................................................... 105
Объект «График» ............................................................................................................................ 108
Динамический объект на скрипте ................................................................................................. 108
ActiveX объекты .............................................................................................................................. 115
Объект «Кнопка действия» ............................................................................................................ 118
Объект «Кнопка»............................................................................................................................. 118
Объект «Выключатель» .................................................................................................................. 119
Объект «Список карт» .................................................................................................................... 121
Объект «Состояние карты» ............................................................................................................ 122
Объект «Ползунок» ......................................................................................................................... 124
Меню карты ..................................................................................................................................... 126
Список отображаемых объектов на картах .................................................................................. 127
IP телефония по протоколу H.323 ..................................................................................................... 129
Окно разговора ................................................................................................................................ 134
Формат номера переговорного устройства сети СОС-95 (БГС, УИР-Р, БДКЛ) ...................... 136
Особенности разговора с устройствами СОС-95 ......................................................................... 136
Как настроить микшер .................................................................................................................... 137
Запись переговоров ......................................................................................................................... 139
Просмотр звукозаписей .................................................................................................................. 139
Программная поддержка ................................................................................................................ 140
Режимы АРМ LanMon ........................................................................................................................ 142
Настройки проекта .............................................................................................................................. 143
Связи..................................................................................................................................................... 151
Запись каналов тип 1 в базу данных PostgreSQL ............................................................................. 153
Модуль приема и отправки SMS сообщений в сети GSM .............................................................. 155
Требования к аппаратному и программному обеспечению ............................................................ 157
Приложения ......................................................................................................................................... 158
Приложение 1: Команды форматирования даты и времени ....................................................... 158
Приложение 2: Команды форматирования чисел с плавающей точкой .................................... 159
Приложение 3: Значения качества канала .................................................................................... 159
Приложение 4: Типы данных значения для канала тип 1 ........................................................... 160
Приложение 5: Типы данных значения для канала тип 2 ........................................................... 164
АРМ LanMon Руководство пользователя
4
Общее описание системы LanMon
Система LanMon - это комплекс программ для обработки и отображения параметров систем
автоматизации. Система LanMon состоит из следующих основных программ:
АРМ LanMon – программа для построения интерфейса оператора. Обычно работает
вместе с сервером LanMon. Данное руководство описывает эту программу.
Сервер LanMon – это отдельное приложение или системная служба. Получает каналы от
драйверов и отсылает всем АРМ LanMon в режиме реального времени. Взаимодействует
с АРМ LanMon по специальному протоколу на базе TCP/IP. Используется для организации сетевой информационной системы c несколькими рабочими местами и/или точками подключения к оборудованию. Некоторые программы (Lift4) и контроллеры (БКД-ПК/ППК-Е/ККД-Е) подключаются к серверу LanMon в режиме «опрос» для регистрации новых каналов (как драйверы). Содержит встроенный клиент для серверов OPC Data Access. OPC клиент используется для формирования на сервере LanMon каналов тип 2 по тэгам, получаемым от стороннего OPC сервера.
Драйвер оборудования LanMon – специализированная DLL библиотека для
взаимодействия сервера LanMon с оборудованием. Драйвер работает под управлением сервера LanMon. Драйвер регистрирует новые каналы от каких-либо источников информации (контроллеров). Основные драйверы:
o bkd.dll – для систем охранной, пожарной сигнализации и диспетчерского
управления на базе контроллеров семейства БКД-ТП/RS/Е/ПК;
o oproslib.dll – для различных систем автоматизации на базе контроллеров БКД-
М/МЕ/ПК, а также для подключения контроллеров и приборов сторонних
производителей (например, теплосчетчиков и электросчетчиков).
Сервер OPC Data Access 2.0 для системы LanMon. Отдельная программа. Служит для
передачи значений каналов системы LanMon в стороннюю скада-систему по протоколу OPC DA 2.0. Подключается к серверу LanMon на отдельную учетную запись, получает от него определенную группу каналов и преобразует их в тэги OPC. Клиенты, поддерживающие протокол OPC DA 2.0, подключаются к этой программе для получения тэгов в режиме реального времени. Используется для интеграции LanMon с другими скада-системами с поддержкой OPC DA.
Все программы системы LanMon работают под управлением операционных систем
Windows XP/Vista/7/2003 server/2008 server. Для работы программ системы LanMon требуется защитный USB ключ с лицензией. Без
ключа все программы работают в демонстрационном режиме. Типовым способом является использование одного USB ключа у сервера LanMon, остальные программы получают лицензии от сервера LanMon по сети.
Система LanMon использует следующие основные понятия:
Канал – виртуальная переменная в системе LanMon. Имеет уникальный адрес, метку
времени, качество, значение и ряд дополнительных атрибутов. Обычно канал несет информацию о показаниях реального датчика. Качество канала несет информацию об исправности датчика, контроллера, к которому этот датчик подключен и канала связи с ним. В сетевых системах с одном сервером LanMon и несколькими АРМ LanMon все работают с единым списком каналов. Изменение значения канала драйвером оборудования мгновенно передается на сервер, а затем и на все АРМ в сети.
Поддерживаются каналы тип 1 (устаревшая технология) и тип 2 (новая технология).
АРМ LanMon Руководство пользователя
5
Ключевыми отличиями каналов тип 2 от каналов тип 1 являются: текстовый адрес,
наличие дополнительных атрибутов, автоматическое создание и признак активности. Канал похож по смыслу на тэг OPC (технология Ole For Process Control широко используется в системах автоматизации).
Адрес канала - Уникальный идентификатор канала. Назначается один раз при создании
канала и в дальнейшем никогда не меняется. Для каналов тип 1 – 4 числа. Каждое число
адресует соответствующий уровень дерева каналов. Допускаются значения чисел адреса
в диапазоне 1…65535. Для каналов тип 2 – текстовая строка. Формируется драйвером
оборудования автоматически. При формировании адреса канала тип 2, как правило,
используется уникальный серийный номер контроллера.
Качество канала - определяет исправность датчика, контроллера и канала связи с ними. Значение канала достоверно, только если качество «ОК» (значение 0). Расшифровка приведена в: «
Приложение 3: Значения качества канала». Значение канала – значение определенного типа, которое несет канал. Тип данных
значения канала тип 1 задается полем TChannel::DTYPE, канала тип 2 полем TChannel2::Type. Значение достоверно только если качество канала «ОК».
Метка времени канала – дата и время последнего изменения качества и/или значения
канала. В системе LanMon регистрируются только изменения качества/значения каналов.
Если качество/значение канала остается прежним, то метка времени не меняется.
Источник значения канала – идентификатор учетной записи сервера LanMon (от 1 до
1000) или драйвера (от -1 до -1000), который сформировал данное изменение качества/значения канала.
Установка
Для установки АРМ LanMon нужны права администратора, так как производится запись
в реестр Windows. Существует два варианта установки:
1. Установка на один компьютер (однопользовательская конфигурация):
1.1. Установите базу данных PostgreSQL. Для этого запустите файл
lanmondatabaseinstall.exe и следуйте инструкциям программы установки.
1.2. Установите сервер LanMon персональный. Для этого запустите файл
lmserver_personalsetup.exe и следуйте инструкциям программы установки.
1.3. Запустите файл lanmonsetup.exe и следуйте инструкциям программы установки. По
умолчанию, программа установки предложит установить АРМ LanMon в директорию
"C:\Program Files\LanMon 4".
1.4. После завершения установки подключите ключ с лицензией на сервер LanMon к USB
порту компьютера. В настройках проекта АРМ LanMon на вкладке «Лицензия» надо
указывать «Получать лицензию от сервера LanMon».
2. Установка дополнительного АРМ LanMon с подключением к имеющемуся серверу LanMon
(сетевая конфигурация):
2.1. Запустите файл lanmonsetup.exe и следуйте инструкциям программы установки. По
умолчанию, программа установки предложит установить АРМ LanMon в директорию
"C:\Program Files\LanMon 4".
2.2. В настройках проекта АРМ LanMon на вкладке «База данных» укажите адрес сервера с
установленной PostgreSQL.
2.3. В настройках проекта АРМ LanMon на вкладке «Сервер» укажите адрес сервера LanMon.
2.4. В настройках проекта АРМ LanMon на вкладке «Лицензия» надо указывать «Получать
лицензию от сервера LanMon».
АРМ LanMon Руководство пользователя
6
Для обновления версии АРМ LanMon на более новую запустите lanmonsetup.exe и в
качестве директории назначения укажите директорию с уже установленным АРМ LanMon. Будет произведено обновление версии. Примечание: обновление версии производится ТОЛЬКО в пределах старшего номера версии. Версию 3.20 на версию 4.00 обновить нельзя. Версию 4.00
надо устанавливать в отдельную директорию и выполнять импорт проекта от версии 3.20.
Для просмотра документации Вам понадобится программа для просмотра документов в
PDF формате. Например, Adobe Acrobat Reader.
Совместимость
Совместимость с АРМ LanMon 1 ограниченная: поддерживается только импорт карт старого формата (с расширением .map). Все настройки проекта, автопилоты, список карт надо делать вручную. Настройки дискретных алармов совместимы по формату файла dalam.ini. Этот
файл может быть скопирован в папку с проектом АРМ LanMon.
Совместимость с АРМ LanMon 2 полная, кроме журнала событий и просмотра архива.
Директория с АРМ LanMon 2 может быть импортирована в менеджере проектов как отдельный
проект. Установка АРМ LanMon 4 в директорию с АРМ LanMon 2 для обновления версии не допускается.
Совместимость с АРМ LanMon 3 полная, кроме журнала событий и просмотра архива.
Проект АРМ LanMon 3 может быть импортирован в менеджере проектов. Установка АРМ LanMon 4 в директорию с АРМ LanMon 3 для обновления версии не рекомендуется.
Лицензирование
Для работы АРМ LanMon требует лицензию. Программа лицензируется по количеству инсталляций. Одно рабочее место – одна лицензия. Лицензия записывается на защитном ключе, который подключается к USB порту компьютера. Для работы USB ключа требуется драйвер. Драйвер поставляется в составе дистрибутива АРМ LanMon и устанавливается вместе с АРМ LanMon. Если запустить АРМ LanMon без ключа или если драйвер ключа не был установлен, будет выведено сообщение следующего вида:
При этом, АРМ LanMon запускается в демонстрационном режиме. Демонстрационный
режим имеет следующие ограничения:
доступно всего 1000 каналов драйверы оборудования не загружается автоматически при запуске проекта при просмотре и печати отчетов выводятся только две страницы, остальные
игнорируется
АРМ LanMon Руководство пользователя
7
в режиме выполнения проекта время работы ограничено одним часом
Для просмотра текущей лицензии выберите пункт главного меню «Помощь / О программе…»:
В защитном ключе АРМ LanMon может дополнительно содержаться лицензия на подключение приборов учета потребления ресурсов для драйвера OprosLib и лицензия на использование модуля SMS.
Лицензия может быть получена от сервера LanMon (из серверного USB ключа). В этом случае локальный USB ключ не используется, но должно быть постоянное подключение к серверу LanMon. Источник лицензии задается в настройках проекта на вкладке «Лицензия».
После изменения источника лицензии, необходимо закрыть проект и открыть его заново.
Обновление лицензии
АРМ LanMon Руководство пользователя
8
Обновление лицензии используется, если после покупки лицензии потребовалось увеличить количество приборов или модулей. Необходимо получить и оплатить счет на увеличение параметров лицензии. Далее, следует воспользоваться утилитой обновления
лицензии (Field Exchange Utility).
1. Запустите утилиту обновления лицензии из меню «Пуск\Все
программы\LanMon\Дополнительно\Утилита обновления лицензии». Перед
запуском данной утилиты надо вытащить из USB порта ВСЕ ключи, кроме обновляемого:
2. Вставьте ключ АРМ LanMon в USB порт компьютера и нажмите кнопку «Get Locking
Code». В поле ввода над кнопкой появится код Вашего ключа. Сохраните его в файле и
отправьте этот файл в «ООО Данфосс» по электронной почте на адрес: ComfortC@danfoss.ru Также, укажите параметры Вашей текущей лицензии: сколько
приборов учета и модулей Вы используете. Укажите, какие параметры лицензии Вы
хотите изменить и на сколько, а также номер счета, по которому Вы произвели оплату.
3. «ООО Данфосс» вышлет Вам в ответ другой код, который надо вбить в поле ввода над
кнопкой «Update License» или загрузить из файла и нажать кнопку «Update License».
АРМ LanMon сам определит, что лицензия обновилась и увеличит параметры лицензии,
но для этого может потребоваться значительное время (до 24 часов). Если Вам надо изменить
параметры лицензии немедленно – придется перезапустить АРМ LanMon.
ВНИМАНИЕ: если на компьютере используется сразу 2 и более USB ключа надо вытащить все
ключи, кроме того, который Вы обновляете. Дело в том, что утилита обновления лицензии не
умеет различать несколько ключей.
Поддержка
Поддержка осуществляется по телефону и электронной почте lanmon@mnppsaturn.ru В
письме необходимо указать: тип и версию операционной системы, версию АРМ LanMon, а также подробное описание проблемы. Описание проблемы должно включать в себя следующие
пункты:
1. Что Вы хотите получить
2. Как вы этого добиваетесь
АРМ LanMon Руководство пользователя
9
3. Что при этом происходит не так как надо
4. Снимки экрана
АРМ LanMon Руководство пользователя
10
Менеджер проектов
Менеджер проектов предназначен для управления проектами АРМ LanMon и выполняет
следующие задачи:
Создание, удаление, редактирование проекта Архивирование проекта в файл ZIP, восстановление из архива Ведение базы проектов с разбивкой по категориям Запуск проекта на выполнение Добавления ярлыков готового проекта на рабочий стол и в меню автозагрузки для
запуска проекта в режиме выполнения
После установки АРМ LanMon, ярлык для вызова менеджера проектов помещается в
меню пуск и на рабочий стол:
После запуска менеджера проектов появляется главное окно:
В верхней части окна расположена панель инструментов. Все функции панели дублируют
соответствующие пункты главного меню.
Основную часть главного окна занимает список проектов. На каждой закладке
представлен свой список проектов. По умолчанию доступны две закладки: «Примеры» и
«Проекты». Закладки позволяют группировать проекты по функциональному назначению. В
настройках менеджера проектов можно изменять и добавлять новые закладки.
АРМ LanMon Руководство пользователя
11
Директория
Комментарии
AUDIO
В эту директорию производится запись переговоров при
использовании встроенной IP телефонии.
AVI
Здесь лежат видеоролики для анимации окна голосовой связи.
BMP
Директория для картинок. Все картинки, использующиеся в проекте должны лежать здесь. Если путь к файлу картинки не
задан АРМ LanMon будет искать картинку здесь.
DATA
Директория для временных файлов.
DRIVER
Директория для файлов настроек и протоколов работы драйверов оборудования. Сами драйверы (DLL) должны находится в поддиректории \DRIVER\ в директории, куда установлен АРМ LanMon.
FR
Директория для отчетов генератора отчетов АРМ LanMon (файлы с расширением fr3)
IMAGES
Директория с библиотеками картинок и настройками
объектов карты «список картинок».
MAP
Директория для карт (файлы с расширением lm2).
MENU
Директория для настроек меню (текстовые файлы с
расширением dat)
PROGRAM
Директория для программ на скрипте (файлы с расширениями
cpp, vb, pas, js)
PROGRAM\SAMPLES\LANMON
Директория с примерами программ на скрипте. Примеры
демонстрируют доступ из скрипта к объектам АРМ LanMon.
PROGRAM\SAMPLES\STANDART
Директория с примерами программ на скрипте. Примеры демонстрируют общие принципы программирования на
скрипте.
TEMPLATE
Директория для хранения настроек графиков.
WAV
Директория для звуковых файлов проекта.
Список проектов содержит следующие колонки:
 «Название» - название проекта. Задается в настройках проекта при его редактировании.  «Автор» - человек или организация - разработчик проекта. Задается в настройках проекта
при его редактировании.
 «Версия» - обозначение версии проекта. Задается в настройках проекта при его
редактировании. При внесении изменений в проект необходимо увеличивать номер его
версии.
 «Папка» - директория с файлами проекта.  «Работал» - время последнего выполнения или редактирования проекта.
В нижней части окна отображается описание текущего проекта. Описание проекта можно задать в настройках проекта при его редактировании. Содержимое описания хранится в текстовом
файле description.txt в папке проекта.
В строку статуса выводится общее количество карт проекта и время последней работы.
Проект
Проект АРМ LanMon представляет из директорию с определенной структурой
поддиректорий с файлами. Структура типового проекта представлена в следующей таблице:
АРМ LanMon Руководство пользователя
12
АРМ LanMon использует относительные пути для поиска файлов. Поэтому директорию с проектом можно копировать в произвольное место на диске или перенести на другой компьютер. Проект останется работоспособным.
Настройки менеджера проектов
В настройках менеджера проектов можно задать ограничение доступа к его функциям по паролю. Выберите пункт меню «Файл / Настройки программы..»:
В разделе «Ограничение доступа» укажите функции, выполнение которых Вы хотите
защитить паролем:
 «Запуск программы» - запрос пароля до запуска менеджера проектов. Если пароль
введен – запуск программы не производится.
«Редактирование проекта» - запрос пароля перед запуском любого из проектов в режиме
редактирования.
 «Выполнение проекта» - запрос пароля перед запуском любого из проектов в режиме
выполнения.
 «Изменение настроек проекта» - запрос пароля перед выполнением любой из функций,
связанной с изменением настроек (создание нового проекта, импорт проекта, изменение
настроек проекта, удаление проекта и т.д.)
В поле «Пароль» задайте пароль. Менеджер проектов будет запрашивать ввод пароля
перед выполнением указанных функций. Если пароль не задан (пустая строка) – проверка пароля не производится – доступ ко всем функциям свободный. Запрос пароля производится один раз – до первого успешного ввода.
В разделе «Закладки» в можно добавлять, изменять, удалять и менять порядок закладок
списка проектов.
АРМ LanMon Руководство пользователя
13
Создание нового проекта
Для создания нового проекта выберите в меню «Проект / Создать новый…». Появится окно с параметрами проекта:
В поле «Каталог проекта» задайте новую директорию, где будут располагаться файлы
нового проекта. Это НЕ ДОЛЖНА быть директория с уже существующим проектом. Если указанная директория не существует – она будет создана. В поле «Закладка» выберите закладку, на которой Вы хотите создать новый проект. При создании проекта в его директорию будут помещены файлы с типовыми настройками проекта.
Создание нового проекта на базе существующего
Выберите проект, который Вам хотелось бы развивать. Выделите его в списке. В меню
выберите пункт «Проект / Создать новый проект на базе существующего…». Появится окно с параметрами проекта:
В поле «Каталог проекта» задайте новую директорию, где будут располагаться файлы
нового проекта. Это НЕ ДОЛЖНА быть директория с уже существующим проектом. Если указанная директория не существует – она будет создана. В поле «Закладка» выберите закладку, на которой Вы хотите создать новый проект. Будет создана точная копия проекта – донора.
Импорт проекта используется в следующих случаях:
Директория с проектом уже есть на диске, но надо добавить проект в список менеджера;
Импорт существующего проекта
АРМ LanMon Руководство пользователя
14
Надо импортировать проект предыдущей версии АРМ LanMon 2
Для импорта выберите в меню «Проект / Импорт…». В появившемся окне укажите
директорию с проектом. В поле «Закладка» выберите закладку, на которую Вы хотите добавить проект. При импорте проекта в список проектов добавляется новая строка. При этом никаких
операций над импортируемым проектом не производится.
Архивирование проекта
Архивирование используется для резервного хранения готовых проектов, а также для
переноса проекта на другой компьютер. Для архивации используется формат ZIP. При архивировании проекта все его файлы упаковываются в один архив с сохранением структуры директорий внутри архива.
Для архивирования проекта выберите в меню «Проект / Архивировать…». В
появившемся окне необходимо указать путь и имя получаемого файла. После выбора имени
архива появится следующее окно:
Дополнительно можно выбрать следующие опции: не включать файлы журнала (для старых проектов LanMon3). Данная опция позволяет не
включать в архив файлы, находящиеся в поддиректории проекта \LOG\*.*
не включать протокол работы проекта. Данная опция позволяет не включать в архив файл
протокола работы проекта «lanmon.log»
После архивирования проекта будет создан ZIP-архив, который можно открывать стандартными средствами Windows или другими архиваторами (WinZip, WinRAR и т. д.).
Из архива можно создать новый проект выбрав в меню «Проект / Создать новый из архива…». При этом появится форма создания нового проекта, описанная выше. Также можно
обновить существующий проект из архива (заместить файлы указанного проекта файлами из
указанного архива), выбрав в меню «Проект / Восстановить из архива …».
Редактирование проекта
В качестве редактора проекта используется АРМ LanMon в режиме редактирования. Для
редактирования выделенного проекта выберите в меню «Проект / Редактировать…» или дважды щелкните мышью на названии проекта в списке.
Выполнение проекта
АРМ LanMon Руководство пользователя
15
Для тестового запуска проекта на выполнение выберите в меню «Проект / Выполнить…».
Перенос проекта на другой компьютер
Перенос проекта может быть выполнен простым копированием директории с проектом. При редактировании проекта надо избегать использования ссылок на файлы по прямому пути (полное имя файла). При переносе проекта рекомендуется использовать функцию архивирования
проекта.
Запуск готового проекта оператором
Выберите проект в списке. Откройте меню «Ярлыки»:
Выберите «Создать ярлык на рабочем столе». На рабочем столе будет создан ярлык с
названием выбранного проекта:
Двойной щелчок мыши на этом ярлыке запускает проект в режиме выполнения.
Автоматический запуск готового проекта при включении компьютера
Выберите проект в списке. Откройте меню «Ярлыки»:
Выберите «Создать ярлык в меню автозагрузки». В меню «Пуск / Все программы / Автозагрузка» будет создан ярлык с названием выбранного проекта. Таким образом, после загрузки операционной системы, будет автоматически запускаться выбранный проект в режиме
выполнения.
Операторы
АРМ LanMon предоставляет встроенный механизм регистрации операторов для контроля доступа к функциям проекта. Каждый оператор имеет следующие реквизиты:
Фамилия, Имя, Отчество, Адрес, Домашний телефон, Мобильный телефон.
АРМ LanMon Руководство пользователя
16
Пароль – требуется ввести при регистрации оператора. Может быть пустым. Права доступа – три уровня: общие, администратор, супервизор. Логика обработки прав
доступа задается программистом на этапе настройки АРМ. Т.е. при выполнении той или
иной функции код на скрипте может проверить права текущего оператора.
Группа – учетная запись сервера LanMon, к которой привязан оператор. При регистрации
оператора АРМ LanMon позволяет выбрать операторов, привязанных к учетной записи на
которую он подключен и операторов группы «сервер LanMon». Группировка операторов
необходима в случае, когда к одному серверу LanMon подключаются разные
подразделения предприятия, в каждом из которых своя команда операторов. По
умолчанию необходимо указывать группу «сервер LanMon».
Запрет регистрации – если у оператора установлен признак запрета регистрации, то
регистрация такого оператора невозможна.
Для редактирования операторов нажмите кнопку панели инструментов:
Поведение окна редактирования операторов зависит от прав текущего оператора: супервизор может все, администратор может добавлять, изменять операторов и свой пароль, оператор может изменить свой пароль. Права текущего оператора указаны в заголовке окна.
Для изменения пароля выберите оператора в списке и нажмите кнопку «Смена пароля». Для запрещения регистрации оператора выберите оператора в списке и нажмите кнопку «Запретить».
Регистрация оператора выполняется в окне:
Для регистрации оператора необходимо выбрать оператора из выпадающего списка и
ввести пароль. В поле «Права» выводятся права выбранного оператора.
Регистрация оператора выполняется: В режиме редактирования проекта через пункт меню «Ресурсы / Смена оператора…»
АРМ LanMon Руководство пользователя
17
Свойство
Описание
property UserID: Integer
Уникальный идентификатор (номер) текущего оператора. Только для чтения.
property FIO: String
Фамилия Имя Отчество текущего оператора. Причем имя и отчество сокращены до первых букв. Только для чтения.
В режиме выполнения проекта вызовом функции скрипта LMOperatorChange() При запуске проекта. Для включения регистрации операторов при запуске проекта
нажмите кнопку «Настройки»:
Автоматическая регистрация предварительно выбранного оператора используется в
случае, когда требуется запускать АРМ без регистрации с минимальными правами. В этом случае, для повышения прав выполняется регистрация оператора функцией скрипта
LMOperatorChange().
Для работы механизма операторов должна быть установлена база данных PostgreSQL.
Параметры подключения к базе данных устанавливаются в настройках проекта на вкладке «База
данных». Верные настройки для подключения к базе данных, установленной на том же компьютере, что и АРМ LanMon, показаны на следующей картинке:
Работа с операторами из программы на скрипте
Текущий оператор задается глобальным объектом скрипта OperatorInfo, тип объекта TOperatorInfo. Доступ к параметрам текущего оператора выполняется через свойства объекта OperatorInfo:
АРМ LanMon Руководство пользователя
18
property LevelSec: Integer
Права доступа текущего оператора (0-супервизор, 1­администратор, 2-общие). Только для чтения.
property LevelSecStr: String
Строковое наименование прав доступа текущего оператора (“супервизор”, “администратор”, “общие”). Только для чтения.
Функция
Описание
procedure LMOperatorChange
Вызов окна регистрации оператора для смены текущего
оператора.
Пример на C++ скрипте:
LMOperatorChange();
procedure LMOperatorsEdit
Вызов окна редактирования операторов. Обычно окно
редактирования операторов используется для смены пароля
оператора в режиме выполнения проекта.
Пример на C++ скрипте:
LMOperatorsEdit();
Следующие функции могут быть вызваны из программы на скрипте:
После успешной регистрации нового оператора вызывается обработчик скрипта
OnOperatorRegister. В качестве параметра он получает ссылку на объект с параметрами нового оператора. Пример:
// Это обработчик вызывается при регистрации нового оператора void OnOperatorRegister(TOperatorInfo NewOperator) { // Запись строки в файл lanmon.log в папке проекта LMProtokol("Зарегистрирован новый оператор " + NewOperator.FIO + " [права " + NewOperator.LevelSecStr + "]"+ "; вместо " + OperatorInfo.FIO + " [права " + OperatorInfo.LevelSecStr + "]"+ ); }
Драйверы оборудования для каналов тип 1
Драйвер оборудования представляет собой динамически подключаемую библиотеку dll, которая экспортирует определенный набор функций. Драйвер регистрирует определенный набор каналов.
АРМ LanMon поддерживает только драйверы для каналов тип 1. Для работы с драйверами
для каналов тип 2 следует использовать сервер LanMon. Поддержка драйверов оборудования в
АРМ LanMon оставлена для обратной совместимости. В новых проектах следует использовать
драйверы вместе с сервером LanMon (даже при наличии одного АРМ оператора в системе).
В комплект стандартной поставки АРМ LanMon входят драйверы:
bkd.dll - для подключения контроллеров семейства БКД-RS/ТП/Ethernet/ПК в системах
охранной, пожарной, газовой сигнализации и диспетчерского управления;
АРМ LanMon Руководство пользователя
19
oproslib.dll - для подключения контроллеров БКД-М, БКД-МЕ, БУиК/БСУ/БСР, а также
для подключения приборов учета потребления ресурсов (счетчики тепла, электричества,
воды и газа сторонних производителей и т.п.);
Каждый драйвер имеет свои файлы настроек. Эти файлы должны находиться в директории
проекта «..\DRIVER\». Для просмотра списка драйверов проекта выберите пункт «Ресурсы\Драйверы оборудования…» главного меню или нажмите кнопку в панели
главного окна:
Приведем пояснение значений колонок списка драйверов:
Драйвер – название DLL библиотеки драйвера; ID – номер экземпляра данного драйвера в списке с нуля. Один драйвер может быть
использован несколько раз, например: надо работать с двумя однотипными
контроллерами, подключенными к разным портам RS-232 компьютера;
Название объекта – название объекта, который обслуживает данный драйвер; Подключение – описание способа подключения к аппаратуре, который реализует данный
драйвер;
Состояние – текущий статус работы драйвера. Эта колонка обновляется автоматически 1
раз в секунду;
Ошибка – описание последней ошибки при работе драйвера;
В строку статуса выводится дополнительная информация о версии выбранного драйвера.
Кнопка «Добавить…» служит для добавления нового драйвера в список используемых в АРМ LanMon, вам надо лишь указать файл с DLL библиотекой драйвера.
Кнопка «Удалить» удаляет драйвер из списка используемых в АРМ LanMon.
Кнопка «Настройка…» вызывает окно настройки параметров работы драйвера. Окно
настроек является специфичным для каждого драйвера и описано в документации на драйвер.
После применения новых настроек драйвера (нажатия кнопки «ОК» в окне настроек) производится автоматическое добавление всех каналов тип 1 драйвера в дерево каналов АРМ
LanMon.
Кнопка «Каналы 1» вызывает окно просмотра списка каналов тип 1, регистрируемых
драйвером:
АРМ LanMon Руководство пользователя
20
Колонки списка каналов:
№ - порядковый номер канала в списке; Адрес – адрес канала тип 1; Тип – тип данных канала; Название – название канала из настроек драйвера; Время – время последнего изменения значения или состояния канала; Состояние – состояние канала и его номер; Значение - значение канала; Есть в дереве - признак наличия канала с таким адресом в списке каналов АРМ LanMon
(в дереве каналов);
В строке статуса выводится информация о настройке выбранного канала в драйвере.
Кнопка «В дерево все» окна списка каналов добавляет в дерево все каналы. Если такой
канал уже есть в дереве – он будет перезаписан.
Кнопка «Статистика» вызывает окно просмотра статистики по работе оборудования, опрашиваемого драйвером.
Название колонок, содержание и цвет строк статистики определяет сам драйвер. У разных драйверов содержание окна статистики различается.
При нажатии на драйвере правой кнопки мыши появится контекстное меню:
АРМ LanMon Руководство пользователя
21
Из него дополнительно доступны специальные функции:
Перезапуск драйвера – завершение работы драйвера и запуск его заново. Приводит к
полному обновлению всех каналов этого драйвера.
Протоколирование работы драйверов – запись подробного хода работы драйверов в
протокол работы проекта «lanmon.log». Этот режим необходимо включать только для
отладки работы драйвера.
В режиме выполнения проекта функции добавления, удаления и настройки драйвера
недоступны.
После добавления драйвера в список, он сразу начинает работать (осуществлять опрос
оборудования и регистрацию каналов в АРМ LanMon). Перезапускать проект не требуется. Получая каналы от драйверов оборудования, АРМ LanMon может отправлять их на сервер LanMon. Для включения этого режима в настройках проекта установите режим работы с
сервером «Опрос» (при этом производится подключение к серверу на учетную запись типа
«Опрос»).
Если АРМ LanMon должен получать данные только от сервера LanMon – список драйверов должен быть пуст.
Управление драйверами
Если в списке драйверов есть хоть один драйвер, АРМ LanMon создает в панели задач
значок . При подведении курсора мыши к значку возникает всплывающая подсказка, в которой указано общее количество драйверов и количество драйверов со статусом «ОК»
(подключен к оборудованию, работает успешно). Если количество драйверов со статусом «ОК» меньше общего количества драйверов (т.е. хоть один драйвер не работает) – значок в панели задач становиться перечеркнутым.
Двойной щелчок мышью на значке панели задач вызывает показ окна драйверов. При
нажатии правой кнопки мыши на значке возникает контекстное меню с пунктом «Завершение
работы». Этот пункт завершает работу АРМ LanMon. В параметрах проекта на вкладке «Драйверы» есть опция, позволяющая запретить завершение работы из этого меню. Возможно использования АРМ LanMon без интерфейса оператора для сбора данных с подключением к серверу LanMon в режиме «Опрос». Для этого требуется:
Настроить необходимые драйверы оборудования; В параметрах проекта настроить подключение к серверу LanMon в режиме «Опрос»; В параметрах проекта на вкладке «Карты» очистить список карт для автоматической
загрузки;
В параметрах проекта на вкладке «Драйверы» установить галочку «Разрешить
завершение работы программы из контекстного меню»;
Запустить проект на выполнение. При этом в панели задач появится значок для
доступа к списку драйверов.
АРМ LanMon Руководство пользователя
22
Общие настройки
В настройках проекта на вкладке «Драйверы» доступны следующие настройки:
«Включить протоколирование работы драйверов в lanmon.log» - если галочка установлена, то производится запись подробного хода работы драйверов в протокол работы проекта «lanmon.log». Этот режим необходимо включать только для отладки работы драйвера. «Включить протоколирование каналов от драйверов в lanmon.log» - если галочка
установлена, то производится запись каналов, полученных от драйверов, в протокол работы
проекта «lanmon.log». Этот режим необходимо включать только для отладки работы драйвера. «Разрешить завершение работы программы из контекстного меню панели задач» - если
галочка установлена, то становится доступным пункт «Завершение работы» контекстного меню
значка драйверов в панели задач. В противном случае пункт недоступен.
Канал «Количество работающих драйверов» При задании в этом поле адреса канала тип 1 с типом значения int32, АРМ LanMon будет
автоматически записывать в него количество работающих драйверов со статусом «ОК».
Используется для контроля количества успешно работающих драйверов.
Программная поддержка
Для доступа к статистике по работе драйверов во время выполнения проекта из программы на скрипте служат две функции:
DriverShow(Show: Boolean) - Показать или скрыть окно драйверов оборудования. В
режиме выполнения проекта функции настройки, добавления и удаления каналов
недоступны.
DriverChannelInfo(A1,A2,A3,A4: Word; Delim: Char): String - Получить дополнительную
информацию о физическом подключении указанного канала от драйверов оборудования.
В качестве входного параметра надо задать адрес канала тип 1. Информация возвращается
в виде текстовой строки. Можно задать разделитель для полей (по умолчанию это символ
табуляции). Если драйверы оборудования не используются, функция возвращает пустую
строку.
Типовое применение функции DriverShow: отдельная кнопка вызывает данную функцию для показа статистики по работе драйверов.
АРМ LanMon Руководство пользователя
23
Типовое применение функции DriverChannelInfo: из контекстного меню объекта карты
вызывается эта функция для получения информации о физическом подключении канала данного
объекта карты.
Для поддержки нового типа оборудования (контроллера) в системе LanMon требуется разработка нового драйвера. Для разработки нового драйвера доступен комплект разработчика. Он включает в себя пример исходного текста динамической библиотеки драйвера на языке C++. Комплект разработчика предоставляется по запросу.
АРМ LanMon Руководство пользователя
24
Каналы тип 1
Канал тип 1 – это переменная в системе LanMon. Канал имеет уникальный адрес, метку
времени, качество, значение и ряд дополнительных атрибутов. Обычно канал несет информацию о показаниях реального датчика. В сетевых системах с одним сервером LanMon и несколькими
АРМ LanMon, все АРМ LanMon работают с единым списком каналов, получаемым с сервера. Изменение значения канала драйвером оборудования мгновенно регистрируется на сервере, а затем передается на все АРМ LanMon.
Адрес канала – это уникальный идентификатор канала. Назначается один раз при
создании канала (обычно в настройках драйвера) и в дальнейшем никогда не меняется. Состоит
из 4х чисел в диапазоне 1…65535. Каждое число адресует соответствующий уровень дерева каналов.
Качество канала определяет исправность датчика или контроллера, информацию от которого и несет данный канал. Значение канала достоверно, только если качество канала «ОК» (значение 0). Расшифровка значений качества приведена в «Приложение 3: Значения качества канала».
Значение канала – значение заранее определенного типа, которое несет канал. Значение достоверно только если качество канала «ОК». Возможные типы данных каналов приведены в «Приложение 4: Типы данных значения для канала тип 1».
Метка времени канала – дата и время последнего изменения качества и/или значения
канала. В системе LanMon регистрируются только изменения качества/значения каналов. Если
качество/значение канала остается прежним, то метка времени не меняется.
Источник значения канала – идентификатор учетной записи сервера LanMon (от 1 до
1000), драйвера (от -1 до -1000) или сервера (0), который сформировал данное изменение
качества/значения канала.
Для записи значения в контроллер (управление оборудованием) АРМ LanMon может
выполнить запись значения в канал. При этом, новое значение будет отправлено на сервер
LanMon и передано драйверу для записи в контроллер.
Каналы тип 1 – устаревшая технология. В новых проектах следует использовать каналы
тип 2. Ключевыми отличиями каналов тип 2 от каналов тип 1 являются: произвольный текстовый
адрес канала, наличие дополнительных атрибутов произвольного типа, автоматическое создание каналов драйвером, поддержка массивов значений, возможность определения своих атрибутов и др. Каналы тип 1 представлены в виде 4-х уровневого дерева. Для вызова редактора каналов
выберите пункт главного меню «Ресурсы / Каналы 1…» или нажмите кнопку в панели главного окна:
АРМ LanMon Руководство пользователя
25
В верхней части окна расположена панель инструментов для редактирования дерева каналов.
Приведем назначение ее кнопок:
- Добавить канал или ветку дерева на тот же уровень, что и текущий.
- Добавить канал на уровень ниже текущего.
- Удалить выделенный канал или целую ветвь (клавиша DEL).
- Раскрыть все дерево каналов .
- Собрать все дерево (клавиша «-»).
- Получить статистику по каналам в выбранной ветви дерева.
- Поиск канала в дереве по названию, начиная с текущей выбранной ветви дерева.
- Продолжить поиск той же строки с текущей выбранной ветви дерева.
В левой части окна отображаются каналы в виде дерева с 3-мя уровнями группировки.
В правой части окна отображается информацию о выбранном канале:
«Адрес» - адрес канала. «Источник» - Наименование учетной записи сервера LanMon или драйвера, который сформировал текущее качество и значение канала. «Время» - время последнего изменения качество и значения канала.
АРМ LanMon Руководство пользователя
26
«Значение» - качество или значение канала: если качество канала «ок» (т.е. канал исправен и
есть значение), то выводится значение, в противном случае выводится расшифровка качества
канала. «Сохранять значение» - установка этой галочки включает режим сохранения значения канала при отключении источника данных (драйвера или учетной записи сервера LanMon). Если галочка
снята (по умолчанию), то при отключении источника данных от сервера, каналу устанавливается качество «Нет данных» и его значение считается недостоверным. Пример использования: для канала «состояние охраны объекта», значение которого может меняться с нескольких АРМ
LanMon, в сетевой системе требуется установить эту галочку. «Тип данных канала». Допустимые типы каналов приведены в «Приложение 4: Типы данных значения для канала тип 1». Изменение типа данных равносильно созданию канала заново, при этом история изменения значения в базе данных утрачивается. «Название» - название канала. «Подсистема» - необязательный атрибут канала. Правильный выбор типа подсистемы важен для
датчиков охранной и пожарной сигнализации, так как влияет на работу алармов и встроенного механизма взятия под охрану. В других случаях выбор подсистемы остается на усмотрении
программиста. «Единицы измерения» - необязательный атрибут канала. Устарело. Наименование единицы измерения следует дописывать к названию канала. «Фильтр сервер, %» - фильтр значений канала по порогу изменения значения в %. Фильтрация
выполняется на сервере при регистрации нового значения канала. Если значение поля не задано или равно 0, то фильтрация не выполняется. Регистрация нового значения канала производится
в следующем случае:
absolute_value_of (last_value - current_value)) > (absolute_value_of (last_value) / 100.0 * значение_фильтра
В противном случае полученное значение по каналу игнорируется.
Используется для уменьшения объема базы данных путем отброса несущественных изменений
аналоговых показаний. «Фильтр сервер, абс.» - фильтр значений канала по порогу изменения значения в абсолютной
величине. Фильтрация выполняется на сервере при регистрации нового значения канала. Если значение фильтра не задано или 0, то фильтрация не выполняется. Регистрация нового значения
канала производится в следующем случае:
absolute_value_of (last_value - current_value)) >= значение_фильтра
В противном случае полученное значение по каналу игнорируется.
Используется для уменьшения объема базы данных путем отброса несущественных изменений
аналоговых показаний. «Создатель» - Наименование учетной записи сервера LanMon или драйвера, который создал канала или изменил его параметры.
Цвет канала в дереве зависит от установленного атрибута «Подсистема». Каналы с включенным фильтром значений отображаются подчеркнутым шрифтом. Каналы с установленным признаком «Сохранять значение» отображаются жирным шрифтом.
В заголовке окна указано: откуда получено и где сохраняется дерево каналов:
«Каналы с диска» – редактор работает с каналами из файлов a1.dat, a2.dat, a3.dat, a4_2.dat,
которые располагаются в директории проекта. Данный режим активен, когда нет
подключения к серверу LanMon или в настройках проекта на вкладке «Сервер» выбран
режим «Не использовать».
 «Каналы с сервера» – редактор работает с каналами, полученными с сервера LanMon.
Данный режим активен, когда в настройках проекта выбран режим «Клиент», «Опрос»
или «Клиент + Опрос» и есть подключение к серверу LanMon. В этом режиме актуальное
АРМ LanMon Руководство пользователя
27
дерево каналов сохраняется на сервере LanMon и в файлах a1.dat, a2.dat, a3.dat, a4_2.dat в
директории проекта. При последующем переключении в режим «Каналы с диска»
(например, при пропадании связи с сервером) дерево каналов останется доступно.
При нажатии на правую кнопку мыши на канале в дереве появляется контекстное меню:
- Импорт каналов из файлов a1.dat, a2.dat, a3.dat, a4_2.dat Необходимо указать папку с этим
файлами. Затем, без дополнительных запросов, будет импортировано все указанное дерево
каналов.
- Поиск канала на всех картах. Выполняется поиск канала на всех загруженных в данный
момент картах. При обнаружении объекта карты, привязанного к искомому каналу, объект карты
выделяется.
- Журнал событий. Показ журнала событий с включенным фильтром по выбранному каналу.
Будут показаны события от начала работы данного проекта. Запрос в базу данных не
выполняется.
- График. Показ графика по выбранному каналу. Запрос истории значений выполняется из
базы данных. Есть возможность выбора интервала просмотра.
- Просмотр истории. Показ окна просмотра истории изменения по выбранному каналу.
Запрос истории выполняется из базы данных. Есть возможность выбора интервала просмотра.
- Генератор значений. Открытие окна для генерации тестовых значений по выбранному
каналу. Применяется при отладке логики работы проекта.
АРМ LanMon Руководство пользователя
28
Каналы тип 2
Канал тип 2 – это переменная в системе LanMon. Канал имеет уникальный текстовый идентификатор (адрес), метку времени, качество, тип данных, значение(я), идентификатор владельца (создателя канала), идентификатор источника значения, перечень атрибутов, признак активности, признак разрешения записи значения.
Канал несет информацию о показаниях реального датчика. В сетевых системах с одном сервером LanMon и несколькими АРМ LanMon все работают с единым списком каналов. Изменение значения канала драйвером оборудования мгновенно регистрируется на сервере, а затем передается на все АРМ LanMon в сети. В системе LanMon поддерживаются каналы тип 1
(устаревшая технология) и тип 2 (новая технология). Ключевыми отличиями каналов тип 2 от каналов тип 1 являются: текстовый адрес, наличие дополнительных атрибутов, автоматическое
создание драйвером и признак активности. Канал похож по смыслу на тэг OPC (технология Ole For Process Control широко используется в системах автоматизации).
Адрес канала это текстовая строка - уникальный идентификатор канала. Назначается
один раз при создании канала и в дальнейшем никогда не меняется. Адрес канала формируется драйвером оборудования автоматически. При формировании адреса канала тип 2, как правило,
используется уникальный серийный номер или адрес контроллера. Адрес канала нечувствителен к регистру символов.
Метка времени канала – дата и время последнего изменения качества и/или значения канала. В системе LanMon регистрируются только изменения качества и/или значения каналов. Если качество и значение канала остаются прежними, то метка времени не меняется.
Качество канала определяет исправность датчика или контроллера, информацию от которого и несет данный канал. Значение канала достоверно, только если качество «ОК» (значение 0). Возможные значения качества приведены в «Приложение 3: Значения качества канала».
Тип данных – тип данных значения канала. Возможные типы данных приведены в «Приложение 5: Типы данных значения для канала тип 2». В качестве типа данных может использоваться массив однотипных значений (например, массив строк).
Значение канала – значение определенного типа, которое несет канал. Значение достоверно только если качество канала «ОК».
Идентификатор владельца (создателя) - идентификатор учетной записи сервера LanMon (от 1 до 1000) или драйвера (от -1 до -1000) или сервера (0), который создал канал или изменил его параметры.
Идентификатор источника значения – идентификатор учетной записи сервера LanMon (от 1 до 1000) или драйвера (от -1 до -1000) или сервера (0), который сформировал текущее качество и/или значение канала.
Атрибут канала – дополнительный параметр канала. Атрибут имеет уникальный номер,
идентификатор владельца (создателя), тип данных и значение(я). В качестве типа данных атрибута может использоваться массив однотипных значений. Атрибуты не являются
обязательными. У канала может не быть ни одного атрибута. Перед использованием атрибут должен быть предварительно определен (пункт меню «Ресурсы / Атрибуты каналов 2»).
Владелец атрибута устанавливается (изменяется) при его создании, при редактировании его параметров и при изменении значения. У одного канала некоторые атрибуты могут быть
автоматически созданы драйвером, а некоторые АРМом. Например, атрибут "Описание" задает наладчик АРМ на этапе наладки системы.
Уникальный номер канала. Присваивается сервером LanMon при первом создании канала и в дальнейшем не изменяется.
Признак активности - На сервере LanMon регистрируются значения только активных каналов. Значение каналов с неустановленным признаком активности сервер игнорирует. Проще
говоря, значения по неактивным каналам в систему LanMon не поступают. Обычно канал
АРМ LanMon Руководство пользователя
29
- уникальный номер канала;
Адрес
- уникальный адрес канала;
Активен
- признак активности канала;
Тип
- тип данных значения канала;
Дата время
- метка времени изменения качества и/или значения канала;
Значение
- значение или массив значений;
Описание
- описание канала;
Единицы
- атрибут «Единицы» - единицы измерения (необязательный атрибут);
Атрибут
- наименование атрибута;
Тип
- тип данных. Возможные типы данных соответствуют типам данных канала;
Значение
- значение или массив значений;
Создатель
- идентификатор создателя атрибута;
Изменен
- метка времени последнего изменения атрибута;
создается драйвером неактивным. Установить признак активности каналу можно из редактора
каналов АРМ LanMon.
Признак разрешения записи – определяет возможность записи значения по каналу.
Используется для посылки команд управления или записи уставок в контроллер. Данный признак
формируется драйвером при создании канала. Запись значения производится функцией скрипта RegisterChannelValue2 и выполняется только если у канала установлен признак разрешения записи.
Для вызова редактора каналов тип 2 выберите пункт главного меню «Ресурсы / Каналы
2…» или нажмите кнопку в панели:
Таблица каналов 2 типа содержит следующие колонки:
Состав колонок в таблице можно назначать. Для этого служит кнопка .
Таблица атрибутов канала 2 типа содержит следующую информацию:
АРМ LanMon Руководство пользователя
30
Новый
- создать новый канал;
Изменить
- редактировать параметры канала;
Клонировать
- создать копию выделенного канала;
Удалить
- удалить канал;
Активность
- изменить признак активности канала. Может быть выбрано несколько каналов;
Добавить/ изменить атрибут у выделенных
- добавление или редактирование атрибута у нескольких выделенных каналов;
Вычисление значения
- создание программы на скрипте расчета качества и значения канала.
Этот механизм используется для создания «виртуального» канала с
вычисляемым значением и качеством;
Коррекция значения
- создание программы на скрипте для коррекции значения исходного канала. Например, для домножения получаемого от драйвера значения канала на 2;
Фильтр
- редактировать параметры фильтрации отображаемого списка каналов;
Фильтр «только активные»
- после выбора данного пункта меню в списке каналов будут отображены только активные каналы.
Генератор значений
- вызов генератора значений по выбранному канала;
Просмотр истории
- просмотр истории значений для выбранного канала (выполняется запрос к базе данных);
Построение графика
- показ графика по выбранному каналу. Запрос истории значений
выполняется из базы данных. Есть возможность выбора интервала
просмотра.
Настройка колонок
- выбор колонок для отображения в списке каналов.
Использовать цвета
- если установить галочку, то строки таблицы каналов будут отображаться различным цветом в зависимости от состояния канала: белый — если канал исправен и активен; зеленый — если канал не активен; голубой – если канал содержит выражение для вычисления значения или коррекции; серый - если качество канала не «ОК» и значение канала недостоверно;
Рисовать сетку
- если установить галочку, то будет отображаться сетка ячеек в таблице каналов;
Не обновлять каналы
- если установить галочку, то автоматическое обновление изменения состояния каналов не будет производиться;
Копировать в буфер обмена
- копировать таблицу каналов в буфер обмена операционной системы;
Команды контекстного меню таблицы каналов тип 2:
АРМ LanMon Руководство пользователя
31
Импорт
- запись списка каналов в файл .xml на жесткий диск компьютера;
Экспорт
- чтение списка каналов из файла .xml с жесткого диска компьютера;
Новый
- создать новый атрибут;
Изменить
- редактировать атрибут;
Удалить
- удалить атрибут.
Адрес
- уникальный адрес канала;
Тип данных
- тип данных значения канала;
Массив значений
- если используется массив значений, то следует установить галочку;
Канал активен
- признак активности канала;
Разрешить запись значения
- если требуется разрешить запись значения канала в контроллер, то следует установить галочку;
Сохранять значения
- если требуется сохранять значение канала после отключения от сервера источника данных, то следует установить галочку;
Префикс описания
- префикс описания канала (атрибут «Префикс»);
Команды редактирования таблицы атрибутов каналов:
Создание и редактирование нового канала
Для создания нового канала следует выбрать команду «Новый» и на вкладке «Настройки» и заполнить следующие поля ввода:
АРМ LanMon Руководство пользователя
32
Описание
- описание канала (атрибут «Описание»);
Назначение
- назначение канала (атрибут «Назначение»);
Единицы измерения
- единицы измерения значения в канале (атрибут «Единицы»);
Маска форматирования
- маска формирования значения при выводе на экран в формате функции printf (атрибут «Формат»): %d - целое со знаком. Может использоваться для целочисленных типов данных: Int1, Int2, Int4, UInt1, UInt2, UInt4; %u - целое без знака. Может использоваться для целочисленных типов данных; %.2f - с плавающей точкой, две цифры после знака. Может использоваться для типов Float4, Float8; %х - в шестнадцатеричном виде. Может использоваться для целочисленных типов данных; %s – строка. Может использоваться для типа String; dd.mm.yyyy hh:nn:ss.zzz - дата время задается особой маской. Может использоваться для типа Date;
Интерпретация
- задание интерпретации значения канала (атрибут EUType).
Аларм включен
- выберите для создания аналогового аларма;
Следует отметить, что создание канала в ручном режиме не является типовой операцией. Обычно драйвер или опросчик создают каналы автоматически исходя из типа подключенного
контроллера.
Для автоматического создания аналогового аларма в АРМ LanMon для выбранного канала, следует на вкладке «Аларм» заполнить следующие поля:
АРМ LanMon Руководство пользователя
33
Недопустимое повышение
- ввести значение, соответствующее недопустимому повышению;
Повышение
- ввести значение, соответствующее рабочему повышению;
Мертвая зона
- ввести диапазон изменения значения для фильтрации значений;
Понижение
- ввести значение, соответствующее рабочему понижению;
Недопустимое понижение
- ввести значение, соответствующее недопустимому понижению;
Сообщение
- ввести текстовое сообщение, которое будет выдаваться в окно аналоговых алармов АРМ LanMon при срабатывании аларма (допускаются специализированные подстановки);
Звуковой файл
- ввести название звукового файла в формате wav, который будет воспроизводиться при возникновении тревоги.
Добавление или редактирование атрибутов канала
При добавлении атрибута откроется окно (см. рисунок ниже). В этом окне следует выбрать
атрибут из списка заранее определенных атрибутов и задать его значение.
Вычисление значения канала
Сервер LanMon позволяет создавать виртуальные каналы, значение которых является результатом вычисления заданной программы на скрипте. Пример использования: создание канала, который показывает значение разности температур двух датчиков (двух других каналов).
Для создания такого канала на сервере следует создать новый канал и задать ему код программы. Код программы следует ввести в поля расчета качества и расчета значения в окне «Вычисление
качества и значения канала»:
АРМ LanMon Руководство пользователя
34
Вычисление указанных программ выполняется 1 раз в секунду. Регистрация нового
значения канала выполняется только при изменении значений качества и / или значения.
Коррекция значения канала
Сервер LanMon позволяет манипулировать данными каналов, поступающих от
опросчиков. Например, перевод кода, поступающего от датчика, в физическую величину, путем умножения на коэффициент пересчета. Это осуществляется при помощи написания программы на скрипте. Код программы следует ввести в поля расчета значения в окне «Коррекция значения
канала»:
При каждом изменении значения канала выполняется указанная программа. Измененное
значение регистрируется на сервере LanMon.
Генератор значений канала
АРМ LanMon Руководство пользователя
35
Адрес
- адрес канала;
Качество
- выбрать из списка требуемое качество канала;
Значение
- ввести требуемое значение канала в соответствии с его типом;
Действие
- Команда управления – отправить на сервер LanMon команду записи значения в контроллер;
- Значение локально – зарегистрировать новое значение канала локально для данного проекта;
- Значение локально и на сервер LanMon - зарегистрировать новое
значение канала локально для данного проекта и отправить на сервер
LanMon;
Сгенерировать
- нажать на кнопку для выполнения выбранного действия;
Генератор значений канала предназначен для формирования качества и значения канала вручную. Применяется для отладки проекта. Следует выбрать в таблице канал и нажать на
кнопку «Генератор значений», откроется окно:
Определение атрибутов канала 2 типа
Все используемые атрибуты каналов типа 2 должны быть предварительно определены.
Сервер LanMon использует ряд предопределенных атрибутов с идентификационными номерами
от 1 до 5299. Номера с 5300 и выше можно использовать при определении собственных
атрибутов.
Для создания нового определения атрибута канала или редактирования существующего
следует выбрать из меню пункт «Ресурсы / Атрибуты каналов 2», откроется окно редактора определений атрибутов:
АРМ LanMon Руководство пользователя
36
Новое
- определение нового вида атрибута;
Изменить
- редактирование выбранного определение атрибута;
Удалить
- удаление выбранного определение атрибута.
При выборе команды «Новое» откроется окно следующего вида:
АРМ LanMon Руководство пользователя
37
Идентификатор
- создание нового цифрового идентификатора атрибута. Пользователь
может создавать описания собственных атрибутов с идентификаторами
5300 и более;
Тип данных
- выбор типа данных атрибута;
Массив
- если используется массив значений, то следует установить галочку;
Наименование
- наименование нового атрибута;
Описание
- текстовое описания атрибута;
- уникальный номер канала на сервере;
Тип
- тип данных значения канала;
Создатель
- наименование учетной записи или драйвера, создавшего канал;
Просмотр истории канала 2 типа
История изменения канала представлена на следующем рисунке:
АРМ LanMon Руководство пользователя
38
Активен
- признак активности канала, по неактивным каналам данные не передаются и не регистрируются в базе данных;
Запись значения
- признак разрешения записи значения в контроллер;
Значение
- значение или массив значений канала;
Источник
- источник значения канала;
Дата время
- метка времени изменения качества и значения канала;
Дата и время регистрации
- метка времени регистрации изменения качества и значения канала на сервере (проставляется сервером при регистрации значения);
Смена диапазона дат
- ввести начальную и конечную даты записей журнала для просмотра;
Копировать в буфер обмена
- копировать содержимое таблицы в буфер обмена Windows.
Команды контекстного меню окна просмотра истории канала:
АРМ LanMon Руководство пользователя
39
загрузить перечень графиков, интервал времени и содержимое вкладки
«Настройки» из файла;
сохранить перечень графиков, интервал времени и содержимое вкладки
«Настройки» в файле; Настройки, сохраненные в файле default.chart.ini в поддиректории проекта template загружаются автоматически при старте проекта.
установка интервала времени для графиков: последние сутки, последняя
неделя, последний месяц или задание интервала вручную;
установка предыдущего / следующего временного интервала (в зависимости от установленного временного интервала);
отобразить график в оригинальном масштабе (отмена приближения);
показать или спрятать боковое меню справа;
сохранить экран графиков в файле формата bmp;
копировать экран графиков в буфер обмена Windows;
Графики
перечень отображаемых графиков в левой области окна;
Значения
численные значения выбранного график и статистические данные;
Графики
Окно графика предназначено для построения графиков изменения значения канала на интервале времени. Для открытия окна графиков выберите пункт меню «Просмотр / Графики…»:
В верхней части окна расположены кнопки:
Боковое меню справа содержит следующие вкладки:
АРМ LanMon Руководство пользователя
40
Настройки
настройки вида области отображения графика;
Дата/время
выбор периода времени для построения графика;
Помощь
встроенная подсказка оператору по работе с графиком;
кнопка изменения цвета графика, открывает типовое окно
выбора цвета;
название графика (название канала), убрать галочку, если не
требуется отображать график;
изменение толщины линии графика, нажатие на стрелки «вверх» увеличивает толщину на один пиксель, «вниз»
уменьшает толщину;
настройка верхней и нижней границ для анализа графика;
убрать график;
Построение графика производится по значениям канала, зарегистрированным в базе
данных. Параметры подключения к базе данных устанавливаются в настройках проекта на
вкладке «База данных». Верные параметры для подключения к базе данных, установленной на
том же компьютере, что и АРМ LanMon показаны на следующей картинке:
Вкладка «Графики»
На вкладке «Графики» расположен перечень графиков, где каждому графику
соответствует строка с названием графика и ряд кнопок для настройки отображения графика:
Границы (верхняя и нижняя) служат для вычисления относительной длительности нахождения значений параметра за их пределами «Время превышения» и «Время понижения»
на вкладке «Значения».
Для отображения линий границ на графике надо поставить галочку «Рисовать границы»
на вкладке «Настройки».
АРМ LanMon Руководство пользователя
41
По умолчанию
показывать границу, если она задана в атрибутах канала 2;
Задать вручную
вручную ввести значения границ;
На следующем графике показаны верхняя и нижняя границы, установленные вручную.
На графике можно посмотреть численное значение параметра в выбранной точке. Для этого надо
нажать Shift и, удерживая ее, подвинуть курсор мыши к точке на графике. Появится подсказка с названием параметра, значением параметра в этой точке графика и метка времени.
Вкладка «Значения»
На вкладке «Значения» отображаются численные значения точек графика с метками времени для одного выбранного графика. Цвет, название и адрес канала выбранного графика
отображаются в верхней строке:
АРМ LanMon Руководство пользователя
42
Всего значений
количество зарегистрированных значений;
Всего неисправных
количество неисправных и недостоверных значений;
Наименьшее значение
наименьшее значение на выбранном периоде даты времени;
Набольшее значение
наибольшее значение на выбранном периоде даты времени;
Размах
разность между наибольшим и наименьшим значениями;
Средневзвешенное
вычисленное средневзвешенное значение по времени на
выбранном периоде даты времени;
Время неисправности
длительность нахождения в состоянии неисправности;
Время превышения
длительность нахождения значения более верхней границы;
Время понижения
длительность нахождения значения менее нижней границы;
Для копирования списка значений в буфер обмена Windows выберите в контекстном меню
пункт «Копировать».
Внизу на вкладке отображаются статистические данные для выбранного графика на
выбранном периоде даты времени:
Вкладка «Настройки»
На вкладке «Настройки» можно настроить оформление окна графиков:
АРМ LanMon Руководство пользователя
43
Цвета
Цвет при неисправности
если требуется изменить цвет линии графика, которым она будет отображаться при неисправности оборудования, то установить
галочку и выбрать цвет линии графика;
Ось значений
Задать формат подписей вручную
если требуется изменить формат подписей, то установить галочку и выбрать новый формат из
списка (смотри Приложение 2: Команды
форматирования чисел с плавающей точкой)
Задать диапазон оси Y
если требуется изменить диапазон значений отображения, то надо установить галочку и ввести
значения нижней и верхней границ для оси Y; если
галочка не установлена, то выбор диапазона оси Y
производится автоматически;
АРМ LanMon Руководство пользователя
44
Ось времени
Задать формат подписей вручную
если требуется изменить формат подписей, то установить галочку и выбрать новый формат из
списка (смотри Приложение 1: Команды
форматирования даты и времени);
Размещать подписи вертикально
если требуется размещать подписи вертикально, то
установить галочку;
График
Рисовать границы
поставить галочку, если требуется отображать
линии границ на графике;
Показывать метки
показывать численные значения параметра на графике в виде меток в рамке, частота меток
задается пользователем;
Спрямлять отрезки между точками
поставить галочку, если требуется соединять точки
(значения) графика прямыми линиями;
Отмечать значения
поставить галочку, если требуется отмечать маркером значения параметра, размер маркера
задается пользователем;
Толщина графика по умолчанию
изменение толщины линии графика по умолчанию
(для нового нрафика);
Фон
Цвет
задание цвета фона графиков;
Цвет заливки
задание цвета заливки для градиентной заливки
фона графиков;
Градиент
задание типа градиентной заливки фона графиков;
Начало периода
дата и время начального значения графика;
Окончание периода
дата и время конечного значения графика;
Применить
изменения
нажать на кнопку для просмотра графика за указанный выше
временной период;
На вкладке «Дата/время» задается период времени, за который строится график и
считаются статистические данные:
Вкладка «Дата/время»
Управление просмотром
На вкладке «Помощь» приведено описание действий оператора по работе с графиком.
АРМ LanMon Руководство пользователя
45
Перемещение области обзора
нажмите и удерживайте левую кнопку мыши и перемещайте курсор
мыши;
Увеличение масштаба
нажмите и удерживайте правую кнопку мыши, переместите курсор
мыши вправо-вниз, отпустите кнопку мыши; выделенная прямоугольная область будет увеличена;
Уменьшение масштаба
нажмите и удерживайте правую кнопку мыши и переместите курсор
мыши влево-вверх, отпустите кнопку мыши;
Выбор графика
выполните двойной щелчок мыши на графике;
Перемещение графика
выберите график, удерживайте клавишу «Ctrl» и укажите курсором мыши место, куда требуется переместить график – будет выполнено перемещение графика по оси Y; Перемещение графика используется,
когда надо временно совместить два графика в разном масштабе для
анализа.
Просмотр значений
удерживая кнопку «Shift» перемещайте указатель курсора мыши по графику;
Построение графика по функции
Для построения графика по результату выполнения некой функции (например, разность
значений двух каналов) необходимо:
1. Создать новый канал тип 2 в редакторе каналов 2 (пункт меню «Ресурсы / Редактор
каналов 2»).
АРМ LanMon Руководство пользователя
46
Функция
Описание
procedure Trend2Clear
Удалить все графики из окна графиков.
Пример на C++ скрипте:
Trend2Clear();
function Trend2Add(Address: String; Expr: String=''; Mask: String=''): Boolean
Добавить график в окно графиков для канала с адресом Address. Для Address можно указывать адреса каналов
тип 1 и 2. В параметре Expr можно указать выражение для пересчета всех значений канала. В параметре Mask
можно задать маску форматирования значения. Временной интервал может быть предварительно
установлен функцией Trend2SetPeriod. Возвращаемое значение: true – успешно, false – ошибка.
Пример на C++ скрипте:
2. У нового канала задать вычисление значения (в редакторе каналов в контекстном меню
выбрать « Вычисление значения канала…»). Вычисление выражения производится на
сервере LanMon. Выражение задается на скрипте на языке, выбранном на сервере LanMon.
Примечания к картинке: функция cq(“адрес канала”) возвращает качество канала Quality,
а функция cv(“адрес канала”) возвращает значение канала. В качестве адреса канала
можно задать адрес канала тип 1 или тип 2.
3. Построить график по новому каналу обычным способом.
Данный способ применим только при работе с сервером LanMon, так как работа с каналами
тип 2 возможна только при использовании сервера LanMon.
Поддержка в скрипте
Следующие функции могут быть вызваны из программы на скрипте:
АРМ LanMon Руководство пользователя
47
/* Добавить график по каналу тип 2 с адресом 1100150_bkd_A0_Usos в список графиков Все значения канала умножить на 2. Изменить маску форматирования по умолчанию на
"%.1f" */ Trend2Add("1100150_bkd_A0_Usos", "value * 2.0", "%.1f");
/* Добавить график по каналу тип 1 с адресом 1.1.4.2 в список графиков */
Trend2Add("1.1.4.2");
function Trend2SetLimits(Address: String, LoLimit, HiLimit: Extended): Boolean
Добавить график в окно графиков для канала с адресом Address и с указанием верхней HiLimit и нижней LoLimit
границ по оси Y. Если такой график уже есть ­производится установка его цвета. Для Address можно
указывать адреса каналов тип 1 и 2. Возвращаемое
значение: true – успешно, false – ошибка.
Пример на C++ скрипте:
Trend2SetLimits("1100150_bkd_A0_Usos", -1, 12);
function Trend2SetColor(Address: String, Color: Integer): Boolean
Добавить график в окно графиков для канала с адресом Address и с указанием цвета. Если такой график уже есть
- производится установка его цвета. Для Address можно
указывать адреса каналов тип 1 и 2. Для Color можно
указывать константы цвета с префиксом cl или указать цвет в кодировке RGB (см. функцию RGB()). Возвращаемое значение: true – успешно, false – ошибка.
Пример на C++ скрипте:
// Установить голубой цвет графика Trend2SetColor("1100150_bkd_A0_Usos", clBlue);
function Trend2AddLine(Value: Extended): Boolean
Добавить графикгоризонтальную линию со значением Value.
procedure Trend2SetPeriod(From, To: TDateTime)
Установить период построения графиков. Перерисовка
графиков с запросом новых данных из базы данных не производится. Для перерисовки графиков можно вызвать функция показа окна графиков
Trend2ShowWindow(true);
Пример на C++ скрипте:
// Установить временной интервал графиков… TDateTime t = Now(); // сегодня с ноля часов по настоящий момент Trend2SetPeriod(int(t), t); // за вчерашние сутки Trend2SetPeriod(int(t)-1, int(t));
АРМ LanMon Руководство пользователя
48
procedure Trend2ShowWindow(Show: Boolean=True)
Показать или скрыть окно графиков. При показе окна
графиков выполняется запрос значений из базы данных
и перерисовка графиков.
Пример на C++ скрипте:
// Показать окно графиков Trend2ShowWindow(true); // Скрыть окно графиков Trend2ShowWindow(false);
function Trend2LoadParam(File: String): Boolean
Загрузить перечень графиков, интервал времени и
содержимое вкладки «Настройки» из файла ini. Если
полный путь не задан, то файл ищется в папке проекта
template.
Пример на C++ скрипте:
// Загрузить настройки из файла \template\my.ini Trend2LoadParam (“my.ini);
АРМ LanMon Руководство пользователя
49
Журнал событий
В журнале событий АРМ LanMon регистрируются:
1. события по изменению каналов тип 1 и тип 2, получаемые от сервера LanMon или от
драйверов оборудования;
2. служебные события, формируемые при работе АРМ LanMon;
3. события, сформированные программой на скрипте;
Каждое событие имеет следующие параметры:
1. Дата время – дата и время события.
2. Адрес – адрес источника события (текстовая строка). Обычно это адрес канала тип 1
или тип 2. Адрес SYSTEM используется для служебных событий, формируемых при работе АРМ LanMon.
3. Наименование – наименование объекта события.
4. Состояние – состояние объекта события.
5. Статус – дополнительный признак. Используется для фильтрации событий и
формирования отчета. Может принимать одно из следующих значений: норма,
срабатывание, тревога, внимание, служебное, неисправность.
6. Назначение - дополнительный признак. Используется при фильтрации событий и при
формировании отчета. Может принимать одно из следующих значений: Не
определено, Интегратор учета в импульсах , Интегратор учета в физических единицах , Канал управления , Канал контроля , Охранный извещатель , Пожарный извещатель , Состояние охраны , Сигнализатор загазованности , Датчик температуры , Извещатель пожарный ручной , Датчик затопления , Лифт . Данный признак отображается в окне журнала в колонке «Состояние»
соответствующим значком. Значок не отображается в случае, если значение признака
не определено.
7. Источник – источник события: учетная запись сервера LanMon, конкретный драйвер
или сам сервер LanMon.
8. Оператор – оператор, в смену которого данное событие было зарегистрировано в
журнале.
Для открытия журнала выберите пункт меню «Просмотр / Журнал событий...»:
Строки в журнале выделяются разным цветом, в зависимости от статуса сообщения:
Тревога – статус тревога устанавливается у критических служебных событий, а также при
срабатывании алармов;
АРМ LanMon Руководство пользователя
50
Срабатывание – статус срабатывание устанавливается в случаях, когда срабатывание
аларма было неполным. Например: срабатывание аларма охранного датчика когда объект
снят с охраны, или срабатывание аларма отфильтрованное механизмом связей;
Внимание – статус внимание не формируется автоматически, но может быть сформирован
при формировании событий из скрипта;
Служебное – статус служебное устанавливается у служебных событий, формируемых при
работе АРМ;
Неисправность – статус неисправность устанавливается у событий по изменению каналов
тип 1 и тип 2 если значение канала недостоверно, т.е. качество «нет данных», «выключен»,
«неисправен» и т.д. (Quality > 0);
Норма – статус норма устанавливается у событий по изменениям каналов тип 1 и тип 2,
если значение канала достоверно и оно не вызвало срабатывание аларма;
У каналов, относящихся к системе охранной сигнализации в колонке «Состояние»
дополнительно отображается состояние охраны канала в момент возникновения события:
- снят с охраны;
- взят под охрану;
Для просмотра дополнительных параметров события выберите пункт контекстного меню « Параметры события…»:
Для просмотра всех событий по одному событию выберите в контекстном меню пункт «
Фильтр по текущему адресу»:
В верхней части окна журнала событий появляется панель фильтрации. Галочка
«Инверсия» изменяет правила фильтрации на противоположенные (т.е. прячет видимые
события и показывает скрытые). «Фильтр по тексту» – регулярное выражение фильтрации в
АРМ LanMon Руководство пользователя
51
всех колонках журнала, кроме колонки «Дата время». Дополнительно можно включить
фильтрацию по статусу и/или назначению события.
Для построения графика по выбранному каналу выберите в контекстном меню пункт «
График…». Для сортировки событий щелкните по заголовку колонки. Для отмены сортировки
выберите в контекстном меню пункт « Сброс сортировки». Для копирования содержимого журнала в буфер обмена выберите в контекстном меню
пункт « Копировать в буфер обмена».
Если в контекстном меню выбран пункт «Переходить на новое событие», то при регистрации нового события курсор в журнале перескочит на него. Если нужно просмотреть журнал за более ранний период, отмените выбор пункта «Переходить на новое событие», чтобы
появление новых событий не мешало просмотру журнала.
Для настройки формата колонки «Дата время» выберите пункт контекстного меню « Формат даты…».
Для настройки шрифта журнала в контекстном меню выберите пункт контекстного меню
« Шрифт…».
Общие настройки журнала событий
Для открытия окна настроек журнала событий выберите пункт контекстного меню « Настройки…»:
Максимальное количество событий в окне журнала – журнал событий отображает не
более установленного числа событий. Если общее число событий в окне журнала
превышает установленный предел, то более старые события становятся недоступными
для просмотра. Для просмотра таких событий необходимо сформировать отчет.
Выполнять запись событий в базу данных – включить регистрацию событий в базе
данных PostgreSQL. База данных PostgreSQL должна быть установлена на компьютере.
Параметры подключения к базе данных устанавливаются в настройках проекта на вкладке
«База данных». Верные параметры для подключения к базе данных, установленной на
том же компьютере, что и АРМ LanMon показаны на следующей картинке:
АРМ LanMon Руководство пользователя
52
Значок в левом верхнем углу окна журнала событий говорит о наличии подключения
к базе данных. Значок говорит об отсутствии подключения.
Если запись событий выключена, то события не сохранятся после завершения проекта и
выполнение отчета будет недоступно.
Выполнить запрос событий из базы данных в начале работы – Если данная опция
выключена, то после запуска проекта журнал событий будет пуст и начнет заполняться
заново. Если данная опция включена, то после запуска проекта из базы данных будут
прочитаны последние по времени записи журнала событий.
Открывать окно журнала при запуске проекта – после запуска проекта автоматически
показывать на экране окно журнала событий.
Примечание: настройки журнала доступны только в режиме редактирования проекта.
Отчет по журналу событий
Отчет по журналу событий позволяет сформировать отчет по событиям,
зарегистрированным в базе данных за указанный период. Для формирования отчета в контекстном меню журнала событий выберите пункт « Отчет…», появится окно ввода параметров:
АРМ LanMon Руководство пользователя
53
Выбор АРМ – В системе может быть несколько Автоматизированных Рабочих Мест
оператора. Каждое из них записывает в базу данных свой журнал событий. Отчет можно
сформировать по журналу событий выбранного АРМ.
Выбор оператора – Необходимо выбрать оператора, в смену которого были
зарегистрированы события. Укажите «Все» для просмотра событий по всем операторам.
Выборка каналов – Необходимо указать выборку адресов каналов тип 1 и тип 2 по
которым будет сформирован отчет. Выборку каналов надо создать заранее при помощи
редактора выборок каналов. Укажите «Все» для просмотра событий по всем адресам
каналов.
Для создания отчета нажмите кнопку «ОК».
Для создания или изменения выборки каналов выберите пункт контекстного меню « Выборки каналов…», появится окно редактора выборок каналов:
АРМ LanMon Руководство пользователя
54
В верхней части окна расположен текущий список выборок каналов. Для каждого АРМ
этот список свой. АРМ определяется по учетной записи сервера LanMon. При смене учетной
записи сервера LanMon созданные выборки станут недоступны. В разделе «Доступные каналы» приведен список всех каналов тип 1 и тип 2, не вошедших в указанную выборку. В разделе «Каналы выборки» приведены каналы, входящие в выборку.
Отчет по срабатываниям
Отчет по срабатываниям позволяет сформировать отчет по срабатываниям охранных, пожарных, газовых и прочих датчиков в особой форме. Для формирования отчета в контекстном
меню журнала событий выберите пункт « Отчет по срабатываниям…», появится окно ввода параметров:
АРМ LanMon Руководство пользователя
55
Отчет по срабатываниям выполняется по журналу событий текущего АРМ по указанной выборке
каналов:
В заголовки колонок отчета заносятся наименования каналов. Белый цвет колонки означает наличие двух и более срабатываний. Зеленый цвет означает наличие только одного срабатывания. Желтый цвет означает отсутствие срабатываний.
Цифрой в ячейке отчета отмечается количество срабатываний. Цифра на желтом фоне
означает срабатывание. Цифра на красном – тревогу. Тревога – это срабатывание с оповещением
оператора в окне тревожных сообщений. Пример срабатывания: срабатывание охранного датчика, когда он снят с охраны. Срабатыванием канала считается значения исправного канала
1, 3 или 5.
При указании шага уплотнения больше ноля происходит группировка соседних строк, если
их дата время отличается меньше, чем значение шага уплотнения.
АРМ LanMon Руководство пользователя
56
Функция
Описание
procedure LMShowEvents(Address: String=''; Status: Integer=-1; Signification: Integer=-1; FilterAnd: Boolean=True)
Показ окна журнала событий с заданием
фильтров.
Address – регулярное выражение для поля «Фильтр по тексту». Пустая строка '' означает все адреса. Status – содержимое поля «Фильтр по статусу» (возможные значения смотри ниже). Значение -1 означает все статусы.
Signification – содержимое поля «Фильтр по
назначению» (возможные значения смотри
ниже). Значение -1 означает все назначения. FilterAnd true - объединить фильтры по логике «И»; false - объединить фильтры по логике «ИЛИ».
Примеры на C++ скрипте:
// Показ окна журнала событий со всеми событиями – фильтрация выключена
LMShowEvents();
// Показ окна журнала событий – включена фильтрация: показывать только события с адресом SYSTEM LMShowEvents(“^SYSTEM$”);
// Показ окна журнала событий – включена фильтрация: показывать только события со статусом тревога датчиков охранной сигнализации
LMShowEvents(“”, 2, 5);
procedure LMRegisterEvent(DT: TDateTime; Address, Comments, State: String; Status, Signification: Integer; Addstatus: Integer=0)
Регистрация нового события в журнале.
DT - содержимое колонки «Дата Время» Address - содержимое колонки «Адрес» Comments - содержимое колонки «Наименование» State – содержимое колонки «Состояние» Status – статус (расшифровку смотри ниже) Signification – назначение (расшифровку смотри ниже) Addstatus – 0 снят с охраны, 1 взят под охрану -
определено только если Signification = 5
Пример на C++ скрипте:
Работа с журналом событий из программы на скрипте
Следующие функции могут быть вызваны из программы на скрипте:
АРМ LanMon Руководство пользователя
57
// Добавление нового события в журнал // Текущая дата время, статус «Внимание», назначение «Не определено» LMRegisterEvent(Now(),“SYSTEM”,“Режим проветривания”, “Включен оператором”, 3, 0);
Значение
Описание
0
Норма
1
Срабатывание
2
Тревога
3
Внимание
4
Служебное
5
Неисправность
Значение
Описание
0
Не определено.
1
Интегратор учета в импульсах. Например, интегратор БРК-К или БТС.
2
Интегратор учета в физических единицах. Например, интегратор газа счетчика Омега в [М3].
3
Канал управления чем-либо. Например, управление клапаном счетчика Омега или канал управления БИУ.
4
Канал контроля чего-либо. Например, сухой контакт БИУ-Р или фаза БИУ.
5
Охранный извещатель или шлейф.
6
Пожарный извещатель или шлейф.
7
Состояние охраны зоны.
8
Сигнализатор загазованности.
9
Датчик температуры.
10
Извещатель пожарный ручной.
11
Датчик затопления
12
Лифт
Свойство
Описание
property DT: TDateTime
Дата и время события. Только для чтения.
property Address: String
Адрес источника события. Только для чтения.
property Comments: String
Наименование объекта события. Только для чтения.
property State: String
Состояние объекта события. Только для чтения.
property Status: Integer
Статус. Только для чтения.
property Signification: Integer
Назначение. Только для чтения.
property Addstatus: Integer
0 снят с охраны, 1 взят под охрану (определено только если
Signification = 5) . Только для чтения.
Возможные значения статуса Status (функции LMShowEvents и LMRegisterEvent, объект
TEventLogItem):
Возможные значения назначения Signification (функции LMShowEvents и LMRegisterEvent, объект TEventLogItem):
Запись журнала событий определяется объектом скрипта типа TEventLogItem:
АРМ LanMon Руководство пользователя
58
property Owner: short
Идентификатор источника события: учетная запись сервера LanMon, конкретный драйвер или сервер LanMon. Только для чтения.
property UserID: Integer
Идентификатор оператора, в смену которого данное событие
было зарегистрировано в журнале. Только для чтения.
property ArmID: short
Идентификатор АРМ, который зарегистрировал данное
событие (учетная запись сервера LanMon). Только для чтения.
При нажатии клавиши в окне журнала событий вызывается обработчик скрипта
OnJurnalKeyDown. В качестве параметра он получает ссылку на объект записи журнала событий TEventLogItem. Пример на C++ скрипт:
// Это обработчик события на нажатие клавиши в журнале событий // При нажатии клавиши ENTER производим запись строки в протокол работы // проекта lanmon.log void OnEventLogKeyDown(TEventLogItem Sender, Word Key, TShiftState Shift) { if( Key == VK_RETURN ) LMProtokol("Нажатие клавиши ENTER в журнале событий:" + " DT=" + DateTimeToStr(Sender.DT) + " Address=" + Sender.Address + " Comments=" + Sender.Comments + " State=" + Sender.State + " Status=" + IntToStr(Sender.Status) + " Addstatus=" + IntToStr(Sender.Addstatus) + " Signification=" + IntToStr(Sender.Signification) + " Owner=" + IntToStr(Sender.Owner) + " UserID=" + IntToStr(Sender.UserID) + " ArmID=" + IntToStr(Sender.ArmID)); }
При двойном щелчке мышью на записи в окне журнала событий вызывается обработчик скрипта OnEventLogDblClick. В качестве параметра он получает ссылку на объект записи журнала событий TEventLogItem. Пример на C++ скрипт:
// Это обработчик двойного щелчка мышью на записи в журнале событий // Производим запись строки в протокол работы проекта lanmon.log void OnEventLogDblClick(TEventLogItem Sender) { LMProtokol("Двойной щелчок мышью в журнале событий:" + " DT=" + DateTimeToStr(Sender.DT) + " Address=" + Sender.Address + " Comments=" + Sender.Comments + " State=" + Sender.State + " Status=" + IntToStr(Sender.Status) + " Addstatus=" + IntToStr(Sender.Addstatus) + " Signification=" + IntToStr(Sender.Signification) + " Owner=" + IntToStr(Sender.Owner) + " UserID=" + IntToStr(Sender.UserID) + " ArmID=" + IntToStr(Sender.ArmID)); }
АРМ LanMon Руководство пользователя
59
Дискретные алармы
Дискретные алармы предназначены для оповещения оператора о возникновении
тревожных значений дискретных каналов. Под дискретными каналами понимаются ступенчато изменяющиеся величины: извещения о срабатывании охранных или пожарных датчиков, переключения исполнительных механизмов и т.п. Дискретный аларм может находится в одном
их 4 состояний:
1. Неисправность
2. Норма
3. Тревога
4. Срабатывание когда снят с охраны (формируется только если условие тревоги «Когда
канал взят под охрану»)
Описание каждого аларма включает в себя:
условия формирования состояния «Тревога»; текстовое сообщение о тревоге; звуковой файл, проигрываемый при возникновении тревоги;
Если значение канала удовлетворяет условиям аларма, то проигрывается звуковой файл и
открывается окно тревожных сообщений.
Поддерживается до 1000 дискретных алармов. Алармы с номерами с 1 по 30
зарезервированы как стандартные (это типовые реакции на срабатывания охранных и пожарных
датчиков). После установки АРМ LanMon они уже настроены нужным образом. Остальные алармы (с 30 по 1000) могут использоваться произвольно. Настройки дискретных алармов хранятся в текстовом файле dalarm.ini в директории текущего проекта.
Для включения аларм должен быть привязан к отображаемому объекту карты. На карту
надо добавить отображаемый объект, привязать к нему канал и заранее созданные алармы. Привязка алармов к объекту карты производится в окне свойств объекта на вкладке «Алармы».
К каждому объекту на карте можно привязать до 3-х алармов.
Для настройки алармов выберите пункт меню «Ресурсы / Алармы…», в появившемся
окне переключитесь на вкладку «Дискретные алармы»:
АРМ LanMon Руководство пользователя
60
Дискретный аларм имеет следующие параметры:
«Аларм включен» - если аларм выключен, он обрабатываться не будет. «Название» - текстовая строка произвольного вида, поясняющая смысл аларма. Используется
только на этапе редактирования проекта.
«Условие тревоги» - «Всегда» - тревога не зависит от состояния охраны канала, «Когда канал взят под охрану» - состояние «тревога» формируется, только если канал взят под охрану (т.е.
группа каналов или карта, содержащие этот канал, взяты под охрану). «№ значения» - некоторые каналы содержат массив значений. Значение номер ноль - это первый элемент массива значений. Если тип значения канала не массив, то данное поле игнорируется.
«Брать из»
Текущее качество – проверяем текущее качество Quality канала; Предыдущее качество – проверяем предыдущее качество Quality канала; Текущее значение – проверяем текущее значение канала. Проверка осуществляется
ТОЛЬКО если текущее качество «ОК», т.е. значение достоверно.
Предыдущее значение проверяем предыдущее значение канала. Проверка
осуществляется ТОЛЬКО если предыдущее качество «ОК», т.е. значение достоверно.
«Операция» - действие, совершаемое над каналом для выяснения: аларм в норме или в тревоге.
истина – поле значение игнорируется, результат всегда TRUE
АРМ LanMon Руководство пользователя
61
< - меньше > - больше = - равно != - не равно <= - меньше или равно >= - больше или равно N1,N2..N20 – список возможных целочисленных значений канала через запятую
(максимум 20)
UP Rate – скорость роста значения канала в минуту: тревога при росте «операнд/мин.»
Результаты операции 1 и операции 2 объединяются по логическому «И». Если результат
равен TRUE – аларм формирует тревогу. Т.е. выдается окно «Тревожные сообщения» и производится звуковое оповещение оператора
«Значение» - значение операции. Допускается число с плавающей точкой. «Сочетание операций» - операция 1 и операция 2 могут сочетаться по условию «И» или
«ИЛИ». «Сообщение» - символьная строка, поясняющая суть произошедшей аварии, выдается оператору АРМ LanMon в красном окне тревог. Если строка пустая – окно тревог в программе АРМ LanMon
не выдается. Кроме обычных символов в данной строке могут присутствовать специальные
подстановки, начинающиеся с символа %. Возможно применение следующих подстановок:
%DT – полные дата и время события в формате, установленном в системе. %DT(mask) – дата и время, сформатированные по указанной маске образом. В скобках
после %DT задается нужный формат. Например: «%DT(dd.mm.yyyy hh:nn:ss.zzz)». Описание форматов смотри в «Руководство по программированию в АРМ LanMon» глава
«Маска форматирования для функции FormatDateTime».
%DATE – дата события в формате ДД.ММ.ГГГГ %TIME – время события в формате ЧЧ.ММ.СС %COMMENTS – название канала тип 1 или тип 2 %A1- название канала тип 1 уровня А1 %A2 - название канала тип 1 уровня А2 %A3 - название канала тип 1 уровня А3 %A4 - название канала тип 1 уровня А4 %STATE - наименование качества %VALUE - основное значение канала (значение номер ноль в массиве) сформатированное
по умолчанию
%VALUEn(%mask) - значение канала. Где n – номер значения канала с нуля, %mask –
маска для форматирования значения канала. Если маска форматирования опущена будет осуществлено форматирование по умолчанию. Маска форматирования значения описана в документе «Руководство по программированию» в приложении «Маска
форматирования для функций Format и sprintf».
%ADDR – адрес канала тип 1 или тип 2 (текстовая строка)
«Выдача в окно тревожных сообщений не чаще, секунд» - формирование аларма производится
ТОЛЬКО если между тревожными значениями параметра прошло время большее указанного. Если задано значение ноль, то формироваться будут все алармы. Обычно используется для формирования извещений о срабатывании объемных охранных датчиков движения, для
отсечения нескольких срабатываний подряд. «Проиграть звуковой файл карты» - установите эту галочку, чтобы проигрывать файл, заданный в параметрах карты, на которой находится объект с привязанным дискретным алармом. «Проиграть звуковой файл объекта карты» - установите эту галочку, чтобы проигрывать файл, заданный на вкладке «Алармы» в параметрах объекта карты с привязанным дискретным алармом.
АРМ LanMon Руководство пользователя
62
«Звуковой файл» - WAV файл, который надо проиграть при тревоге аларма. Если задано имя файла без пути, то файл будет искаться в поддиректории \WAV\ папки с установленным АРМ LanMon, а затем в папке \WAV\ текущего проекта. Если данное поле оставить пустым, то проигрывание звукового файла не производится. «Произносить номер пикета из названия канала» - надо ли произносить номер пикета после
проигрывания звукового файла, если название уровня А3 начинается с символов “ПКnnn”, где nnn номер от 1 до 999. Данная функция используется только для коммуникационных коллекторов
с размеченным пикетажем.
«Кол-во проигрываний» - сколько раз надо проиграть все звуковые файлы. «Пауза между проигрываниями, сек.» - сколько секунд ждать между повторением
проигрывания всех звуковых файлов.
Поддержка в скрипте
При формировании состояния «тревога» дискретного аларма, вызываются два обработчика в программе на скрипте:
Вариант 1:
void OnDigitalAlarm(int Alarm, WORD A1, WORD A2, WORD A3, WORD A4, bool & bAllow)
Для добавления этого обработчика в текст программы в редакторе программ выберите в меню
«События / Тревога дискретного аларма вариант 1».
Обработчик вариант 1 имеет следующие параметры:
int Alarm - номер дискретного аларма с 1. WORD A1, A2, A3, A4 - адрес канала тип 1, который вызвал формировании состояния «тревога»
дискретного аларма. bool & bAllowразрешение появления окна «Тревожные сообщения» и включения проигрывания звукового файла. По умолчанию значение true. Это значение может быть изменено из программы на скрипте.
Пример:
void OnDigitalAlarm(int Alarm, WORD A1, WORD A2, WORD A3, WORD A4, bool & bAllow) {
// Запретим активизацию аларма №27 If( Alarm==27 ) bAllow=false; else bAllow=true; }
Этот обработчик работает только с каналами тип 1.
Вариант 2:
void OnDigitalAlarm2(int Alarm, TMap map, TMonControl control, bool & bAllow, bool & bVisual, bool & bSound)
Для добавления этого обработчика в текст программы в редакторе программ выберите в меню
«События / Тревога дискретного аларма вариант 2».
Обработчик на активизацию дискретного аларма тип 2 имеет следующие параметры:
int Alarm - номер дискретного аларма с 1. TMap map - ссылка на карту, где находится отображаемый объект, вызвавший активизацию
аларма.
АРМ LanMon Руководство пользователя
63
TMonControl control - ссылка на объект карты, вызвавший активизацию аларма. bool & bAllow - разрешение появления окна «Тревожные сообщения» и включения проигрывания
звукового файла. По умолчанию значение true. bool & bVisual - разрешение появления окна «Тревожные сообщения». По умолчанию значение
true.
bool & bSound - разрешение проигрывания звукового файла. По умолчанию значение true.
Пример:
void OnDigitalAlarm2(int Alarm, TMap map, TMonControl control, bool & bAllow, bool & bVisual, bool & bSound) {
// Запретим проигрывание звукового файла при тревоге по аларму №27 If( Alarm==27 ) bSound =false; else bSound =true; }
АРМ LanMon Руководство пользователя
64
Аналоговые алармы
Аналоговый аларм предназначен для отслеживания нахождения значения канала в
заданных границах. Для каждого канала определяются границы допустимого значения. При выходе значения за указанные границы производится звуковое и визуальное оповещение
оператора. Обычно отслеживаются показания датчиков давления, температуры, расхода и т. п. Всего может быть 1000 аналоговых алармов (номера с 1001 до 2000).
Аналоговый аларм имеет следующие параметры:
«Аларм включен» - если аларм выключен – он обрабатываться не будет «Номер» - идентификатор аларма от 1001 до 2000, присваивается автоматически «Название» - текстовая строка для пояснения смысла аларма. Фигурирует только на этапе
редактирования проекта.
«Адрес канала» - канал, значение которого отслеживается алармом. Можно задать адрес
канала тип 1 или тип 2.
Границы: «Недопустимое повышение», «Повышение», «Мертвая зона»,
«Понижение», «Недопустимое понижение». Допускается задавать не все, а лишь необходимые границы.
«Сообщение» - текстовое сообщение, которое выдается в окно мониторинга алармов и в
окно тревожных сообщений. В сообщение можно включать подстановки:
%DT – полные дата и время события в формате, установленном в системе. При выводе
времени в окно мониторинга алармов используется интеллектуальное представление даты
и времени события. Если событие произошло сегодня — выводится только время. Если
событие произошло не более 7 дней назад — выводится название дня недели и время. В
противном случае выводятся полные дата и время.
%DT(mask) – дата и время, сформатированные по указанной маске образом. В скобках
после %DT задается нужный формат. Например: «%DT(dd.mm.yyyy hh:nn:ss.zzz)».
Описание форматов смотри в «Руководство по программированию в АРМ LanMon» глава
«Маска форматирования для функции FormatDateTime».
%COMMENTS – название канала тип 1 или тип 2
%VALUE – значение канала
%ALARM – одно из пяти возможных состояний аларма (текстовая строка): "норма",
"повышение", "недопустимое повышение", "понижение", "недопустимое понижение",
"неисправность".
%ADDR – адрес канала тип 1 или тип 2 (текстовая строка)
%STATE – текстовое описание состояния канала
Если сообщение на задано – выдача сообщения в окно мониторинга алармов и в окно
тревожных сообщений производится не будет.
«Проиграть звуковой файл карты» - установите эту галочку, чтобы проигрывать файл,
заданный в параметрах карты, на которой находится объект с указанным адресом канала.
«Проиграть звуковой файл объекта карты» - установите эту галочку, чтобы
проигрывать файл, заданный на вкладке «Алармы» в параметрах объекта карты с указанным адресом канала.
«Звуковой файл» - WAV файл, который надо проиграть при недопустимом понижении
или недопустимом повышении аларма. Если задано имя файла без пути, то файл будет
искаться в поддиректории \WAV\ папки с установленным АРМ LanMon, а затем в папке \WAV\ текущего проекта. Если данное поле оставить пустым, то звуковое оповещение не воспроизводится.
«Кол-во проигрываний» - сколько раз надо проиграть указанные звуковые файлы. Если
оператор подтвердил прочитанное в окне тревожных сообщений, то воспроизведение
звука будет остановлено.
АРМ LanMon Руководство пользователя
65
«Пауза между проигрываниями, сек.» - сколько секунд ждать между повторением
проигрывания звуковых файлов.
Способ формирования состояния аларма объясняется на следующих рисунках. Зеленым
цветом показан график изменения значения канала. Превышение верхней границы:
Принижение нижней границы:
Возможные состояния аналогового аларма:
Недопустимое повышение соответствует интервалу на графике превышения верхней
границы «Тревога активна». Цвет сообщения в окне мониторинга алармов - красный.
Недопустимое понижение соответствует интервалу на графике принижения нижней
границы «Тревога активна». Цвет сообщения в окне мониторинга алармов - красный.
Повышение соответствует интервалам на графике превышения верхней границы
«Предупреждение активно». Цвет сообщения в окно мониторинга алармов - желтый.
Понижение соответствует интервалу на графике принижения нижней границы
«Предупреждение активно. Цвет сообщения в окно мониторинга алармов - желтый.
Неисправность данное состояние формируется если качество канала Quality не равно
нулю (т.е. при любой неисправности канала, а также при состояниях «нет данных» и
«выключен»). Цвет сообщения в окно мониторинга алармов - серый.
АРМ LanMon Руководство пользователя
66
Норма — соответствует интервалу на графике, когда значение канала лежит между
границами повышение и понижение. Цвет сообщения в окне мониторинга алармов ­белый.
Состояние аларма формируется при поступлении нового значения канала, привязанного к аларму, от драйвера или от сервера LanMon. При регистрации в журнале событий канал получает статус «Тревога», «Срабатывание», «Норма», «Неисправность» в соответствии с состоянием
аларма. Текущие сообщения аналоговых алармов выводятся в окно мониторинга алармов:
При изменении состояний аларма из «Повышение» или «Понижение» или «Неисправность» или «Норма» в состояния «Недопустимое повышение» или «Недопустимое понижение» производится показ окна тревожных сообщений и проигрывание звукового файла
аларма. В окно выводится сообщение аларма:
Настройки аналоговых алармов задают порядок обработки и вывода информации
оператору. Для открытия окна настроек выберите в меню «Файл / Настройки проекта…» и откройте вкладку «Алармы»:
Вывод сообщения в окно мониторинга алармов не является обязательным и может быть отключен снятием галочки «Включить вывод в окно мониторинга аналоговых и программных
алармов». При этом вывод в окно «Тревожные сообщения» и звуковая сигнализация могут продолжать работать.
Допускается не выводить сообщение в окно мониторинга если значение канала находится в допустимых границах. Для этого снимите галочку «Выводить сообщение в состоянии
«норма» (значение канала находится в границах) в окно мониторинга».
АРМ LanMon Руководство пользователя
67
Показ окна тревожных сообщений и проигрывание звукового файла аларма производится ТОЛЬКО если установлена галочка «Выводить сообщение в окно «Тревожные сообщения» и
проигрывать звук при недопустимом повышении или понижении».
Создание аналогового аларма по каналу
Предусмотрены три способа для создания аналогового аларма.
Способ 1: создание аларма в редакторе алармов. Для вызова редактора алармов выберите в меню «Ресурсы / Алармы…» и вкладку « Аналоговые алармы». Для каждого канала нужно
добавить отдельный аларм в список. Преимущество данного способа заключаются в том, что созданные алармы работают всегда, независимо от того: отображается параметр на картах или нет. Окно редактора алармов показано на следующей картинке. В левой части окна расположен
список алармов. В правой части – параметры аларма, выделенного в списке.
Настройки аналоговых алармов хранятся в файле aalarm.ini в директории проекта. Каждый проект АРМ LanMon имеет свои локальные настройки аналоговых алармов.
АРМ LanMon Руководство пользователя
68
Способ 2: неявное создание аларма указанием в свойствах графического объекта карты одного
из аналоговых алармов, заранее созданных в редакторе. При запуске проекта на выполнение для этого объекта карты неявно создается отдельный аналоговый аларм. Все настройки создаваемого аларма берутся из указанного аларма. Аналоговый аларм задается в окне свойств объекта карты на вкладке «Алармы». У объекта карты должен быть указан адрес канала. Преимущество данного способа заключаются в том, что не нужно повторно задавать одинаковые параметры алармов для нескольких каналов. Указанный аналоговый аларм используется как шаблон
настроек. У такого аларма задавать адрес канала не требуется.
Способ 3: задание параметров аларма в настройках канала тип 2.
При запуске проекта на выполнение для этого канала создается отдельный аналоговый аларм с указанными параметрами, количеством проигрываний звукового файла 10000 и паузой 2 секунды между проигрываниями. Преимущество данного способа заключаются в том, что настройки
аналогового аларма привязываются к каналу тип 2. Они хранятся на сервере LanMon, единые для всех АРМ LanMon. Данный способ применим только для каналов тип 2.
АРМ LanMon Руководство пользователя
69
Функция
Описание
procedure LMViewAlarmMonitoring
Показать окно мониторинга аналоговых и программных
алармов.
Пример на C++ скрипте:
LMViewAlarmMonitoring ();
function AAState(Alarm: Variant; ResultType: Integer): Variant
Получить состояние аналогового аларма.
Alarm - название аларма или его номер в списке алармов. ResultType – тип возвращаемого значения. Если ResultType
Создание аналогового аларма по функции
Для создания аларма по результату выполнения некой функции (например, разность
значений двух каналов) необходимо:
1. Создать новый канал тип 2 в редакторе каналов (пункт меню «Ресурсы / Каналы 2»).
2. У нового канала задать вычисление значения (в редакторе каналов в контекстном меню
выбрать « Вычисление значения канала…»). Выражение задается на скрипте на языке,
выбранном на сервере LanMon. Вычисление выражения производится на сервере LanMon.
Примечания к картинке: функция cq(“адрес канала”) возвращает качество канала Quality, а функция cv(“адрес канала”) возвращает значение канала. В качестве адреса канала можно задать адрес канала тип 1 или тип 2.
3. создать аналоговый аларм одним из обычных способов, привязав к нему созданный канал
Данный способ применим только при работе с сервером LanMon, так как работа с каналами тип 2 возможна только при использовании сервера LanMon.
Поддержка в скрипте
Следующие функции могут быть вызваны из программы на скрипте:
АРМ LanMon Руководство пользователя
70
равен нулю, функция возвращает целочисленное состояние
аларма:
-1-указанный аларм не найден 0-ок 1-повышение 2-недопустимое повышение 3-понижение 4-недопустимое понижение 5-неисправность канала
Если ResultType равен единице, функция возвращает текстовую расшифровку состояния аларма.
При изменении состояния аналогового аларма, вызывается событие в программе на скрипте: void OnAnalogAlarm(int Alarm, TChannel2 Channel, int & AnalogState). Для добавления обработчика этого события в редакторе программ выберите в меню «События / Изменение состояния аналогового аларма». Обработчик события получает параметры: номер сработавшего аларма Alarm, ссылка на объект канала тип 2 Channel, состояние аларма
AnalogState.
Параметр AnalogState может принимать одно из следующих значения: 0 - Норма 1 - Повышение 2 - Недопустимое повышение 3 - Понижение 4 - Недопустимое понижение 5 - Неисправность
При изменении значения параметра AnalogState внутри обработчика произойдет изменение состояния аларма с номером Alarm.
Пример обработчика события приведем на C++Script:
// Это обработчик вызывается при изменении состояния аналогового аларма void OnAnalogAlarm(int Alarm, TChannel2 Channel, int & AnalogState) {
// Добавление строки с параметрами аларма в текстовый файл lanmon.log
LMProtokol("Alarm=" + IntToStr(Alarm) + " State=" + IntToStr(AnalogState) + " Addr=" + Channel.ID + " Quality=" + Channel.QualityText + " Value=" + Channel.ValuesText); }
АРМ LanMon Руководство пользователя
71
Программные алармы
Программный аларм предназначен для отслеживания значения логического выражения на скрипте. При переходе значения выражения из FALSE в TRUE аларм переходит в состояние «Тревога». Всего в проекте может быть 1000 программных алармов (номера с 2001 до 3000).
Программный аларм имеет следующие параметры:
«Аларм включен» - если аларм выключен – он обрабатываться не будет. Выключить
аларм можно только при редактировании проекта.
«Номер» - идентификатор аларма от 2001 до 3000, присваивается автоматически «Название» - текстовая строка для пояснения смысла аларма. «Выражение на скрипте» - логическое выражение или фрагмент кода на скрипте.
Допускаются операторы «return». Используется язык основного программного модуля проекта (если основная программа на C++script, то и выражение надо писать на C++script). Выражение вычисляется 1 раз в секунду. При переходе значения выражения из FALSE в TRUE аларм переходит в состояние «Тревога».
Состояние: одно из «Тревога», «Внимание», «Норма», «Неисправность». Порядок
формирования состояний объясняется ниже.
«Сообщение» - текстовое сообщение, которое выдается в окно мониторинга алармов и в
окно тревожных сообщений. В сообщение можно включать подстановки:
%ADT – при выводе времени в окно мониторинга алармов используется
интеллектуальное представление даты и времени события. Если событие произошло
сегодня — выводится только время. Если событие произошло не более 7 дней назад —
выводится название дня недели и время. В противном случае выводятся полные дата и
время в формате, установленном в системе.
%DT полные дата и время последнего изменения состояния аларма в формате,
установленном в системе.
%DT(mask) – дата и время, сформатированные по указанной маске образом. В скобках
после %DT задается нужный формат. Например: «%DT(dd.mm.yyyy hh:nn:ss.zzz)».
Описание форматов смотри в «Руководство по программированию в АРМ LanMon» глава
«Маска форматирования для функции FormatDateTime».
%ALARM – состояние аларма, одно из: «Тревога», «Внимание», «Норма»,
«Неисправность».
%COMMENTS – описание канала, адрес которого задан в поле «адрес канала».
%STATE – значение и единицы измерения канала, адрес которого задан в поле «адрес
канала».
%VALUE - значение канала, адрес которого задан в поле «адрес канала».
Если сообщение не задано – выдача сообщения в окно мониторинга алармов и в окно
тревожных сообщений производиться не будет.
%ADDR –адрес канала.
%NAME – название аларма.
«Задержка выдачи тревоги, сек.» - определяет паузу между появлением значения
выражения TRUE и выдачей сообщения в окно мониторинга алармов и в окно тревожных сообщений. Иначе говоря, для выдачи тревоги значение выражения TRUE должно
продержаться без изменения указанное здесь время. Установите значение 0 для отключения задержки.
«Проиграть звуковой файл карты» - установите эту галочку, чтобы проигрывать файл,
заданный в параметрах карты, на которой находится объект с указанным адресом канала.
«Проиграть звуковой файл объекта карты» - установите эту галочку, чтобы
проигрывать файл, заданный на вкладке «Алармы» в параметрах объекта карты с указанным адресом канала.
АРМ LanMon Руководство пользователя
72
«Звуковой файл» - WAV файл, который надо проиграть при недопустимом понижении
или недопустимом повышении аларма. Если задано имя файла без пути, то файл будет
искаться в поддиректории \WAV\ папки с установленным АРМ LanMon, а затем в папке \WAV\ текущего проекта. Если данное поле оставить пустым, то звуковое оповещение не воспроизводится.
«Кол-во проигрываний» - сколько раз надо проиграть звуковые файлы. «Пауза, сек.» - сколько секунд ждать между повторением проигрывания звуковых файлов. «Адрес канала» - адрес канала тип 1 или тип 2, привязанный к аларму. Если адрес канала
не задан, то параметры «Проиграть звуковой файл карты», «Проиграть звуковой файл объекта карты», а также подстановки в сообщении %COMMENTS, %STATE, %VALUE
не работают. Если адрес канала не задан, то маскирование аларма будет работать с некоторыми оговорками.
Формирование состояний программного аларма:
«Тревога» выражение успешно вычислено, его значение TRUE и отсчет задержки
выдачи тревоги завершен или не задан. Цвет сообщения в окне мониторинга алармов ­красный.
«Внимание» выражение успешно вычислено, его значение TRUE и выполняется отсчет
задержки выдачи тревоги. Если задержка выдачи тревоги не задана (значение 0), то данное состояние не формируется. Цвет сообщения в окно мониторинга алармов - желтый.
«Неисправность» данное состояние формируется, если при вычислении выражения
произошла ошибка или программное исключение. Цвет сообщения в окно мониторинга
алармов - серый. Пример: данное состояние может быть сформировано функцией получения значения канала cv(“1.1.1.1”) когда значение канала 1.1.1.1 недостоверно (функция cv() формирует исключение).
«Норма» выражение успешно вычислено и его значение FALSE. Цвет сообщения в
окне мониторинга алармов - белый.
Состояние аларма формируется вычислением выражения 1 раз в секунду. При изменении
состояния аларма в журнале событий автоматически регистрируется событие со статусом «Тревога», «Срабатывание», «Норма» или «Неисправность» в соответствии с состоянием аларма.
Текущие сообщения программных алармов выводятся в окно мониторинга алармов:
При изменении состояний аларма из «Неисправность» или «Норма» в состояния «Тревога» производится показ окна тревожных сообщений и проигрывание звукового файла
аларма. В окно выводится сообщение аларма:
АРМ LanMon Руководство пользователя
73
Общие настройки программных алармов задают порядок обработки и вывода информации оператору. Для открытия окна настроек выберите в меню «Файл / Настройки проекта…» и откройте вкладку «Алармы» раздел «Программные алармы»:
Вывод сообщения в окно мониторинга алармов не является обязательным и может быть отключен снятием галочки «Включить вывод в окно мониторинга аналоговых и программных
алармов». При этом вывод в окно «Тревожные сообщения» и звуковая сигнализация могут продолжать работать.
Допускается не выводить сообщение в окно мониторинга если аларм в состоянии «норма». Для этого снимите галочку «Выводить сообщение в состоянии «норма» (значение выражения
FALSE) в окно мониторинга».
Показ окна тревожных сообщений и проигрывание звукового файла аларма производится ТОЛЬКО если установлена галочка «Выводить сообщение в окно «Тревожные сообщения» и
проигрывать звук при изменении значения выражения FALSE
TRUE».
Создание программного аларма
Предусмотрены два способа для создания программного аларма.
Способ 1: создание аларма в редакторе алармов. Для вызова редактора алармов выберите в меню «Ресурсы / Алармы…» и вкладку «Программные алармы». Созданные алармы начинают работать сразу после создания. Окно редактора алармов показано на следующей картинке. В левой части окна расположен список алармов. В правой – параметры аларма, выделенного в списке.
АРМ LanMon Руководство пользователя
74
Функция
Описание
procedure LMCreateProgramAlarm(Alarm: Integer; Name,Expression,Message: String; DelayTime:Integer; SoundFile: String; PlayCount,PlayPause:Integer; Addr: String)
Создание включенного программного аларма в
режиме выполнения проекта. Параметры:
Alarm – номер аларма от 2001 до 3000 Name – название Expression – выражение на скрипте Message - сообщение DelayTime – задержка выдачи тревоги SoundFile – звуковой файл PlayCount – количество проигрываний PlayPause – пауза между проигрываниями
Настройки программных алармов хранятся в файле palarm.ini в директории проекта. Каждый проект АРМ LanMon имеет свои локальные настройки программных алармов.
Способ 2: вызов функции скрипта LMCreateProgramAlarm в режиме выполнения проекта.
АРМ LanMon Руководство пользователя
75
Addr – адрес канала тип 1 или тип 2 для
привязки
Поддержка в скрипте
При изменении состояния программного аларма, вызывается событие в программе на скрипте: void OnProgramAlarm(int Alarm, String Addr, int State). Для добавления обработчика этого события в редакторе программ выберите в меню «События / Изменение состояния программного аларма». Обработчик события получает параметры: идентификатор сработавшего аларма Alarm, адрес канала Addr, состояние аларма State. Состотояние аларма State может принимать одно из следующих значений: 0-норма 1-внимание 2-тревога 3-неисправность.
Пример обработчика события приведем на C++Script:
// Это обработчик вызывается при изменении состояния программного аларма void OnProgramAlarm(int Alarm, String Addr, int State) { // Добавление строки с параметрами аларма в текстовый файл lanmon.log LMProtokol("OnProgramAlarm ID=" + IntToStr(Alarm) + " Addr=" + Addr + " State=" + IntToStr(State) ); }
Маскирование алармов
Маскирование предназначено для временного прекращения оповещения оператора о
срабатывании аларма. Аларм любого типа может быть замаскирован. Если аларм замаскирован, то:
1. При срабатывании аларма открытие окна тревожных сообщений не производится.
2. При срабатывании аларма проигрывание звукового сообщения не выполняется.
3. Обработчики скрипта OnDigitalAlarm(), OnDigitalAlarm2(), OnAnalogAlarm(),
OnProgramAlarm(), OnNewAlarmMessage() от замаскированного аларма не вызываются.
4. На соответствующем объекте карты рисуется красный значок маскирования «стоп»
(в правом верхнем углу).
5. В окне мониторинга алармов у замаскированного аларма рисуется красный значок
маскирования «стоп» .
6. В журнале событий сообщения от соответствующего адреса канала помечаются красным
значком маскирования «стоп» , если хоть 1 аларм с таким адресом замаскирован.
7. При срабатывании замаскированного аларма красный цвет обозначения состояния карты
в объектах «список карт» и «состояние карты» не появляется.
Аларм связывается с объектом карты через адрес канала. Для выполнения маскирования или размаскирования аларма предусмотрено 3 способа:
1. Из контекстного меню объекта карты:
АРМ LanMon Руководство пользователя
76
2. Из контекстного меню окна мониторинга алармов:
3. Из программы на скрипте функциями IsMasked(), ChangeMask(). Описание
указанных функций смотрите в руководстве по программированию.
При выполнении маскирования или размаскирования аларма в журнал событий заносится сообщение со статусом «служебное»:
После перезапуска проекта состояние маскирования алармов сохраняется.
Окно мониторинга алармов
Текущее сообщение дискретных, аналоговых и программных алармов может выводиться в
окно мониторинга алармов. Для открытия окна мониторинга алармов выполните следующее:
В режиме редактирования проекта выберите пункт меню «Просмотр / Мониторинг
алармов…».
В режиме выполнения проекта вызовите процедуру скрипта LMViewAlarmMonitoring();
Разместите на карте объект «кнопка действия» с настройкой «просмотр окна алармов»:
В окне выводится список строк, каждая из которых - это сообщение дискретного, аналогового или программного аларма. Если у аларма сообщение не задано – строка в окно не
выводится. Вывод сообщения в окно мониторинга алармов не является обязательным и может быть отключен в настройках проекта отдельно для дискретных, аналоговых и программных алармов. В списке может быть меньше строк, чем общее количество алармов, если отключен
вывод сообщений в состоянии «норма» (см. настройки). В заголовке окна выводится статистика по количеству дискретных, аналоговых и программных алармов в различных состояниях:
АРМ LanMon Руководство пользователя
77
Тревог – дискретных алармов в состоянии «Тревога», аналоговых алармов в состоянии
«Недопустимое повышение» или «Недопустимое понижение» и программных алармов в
состоянии «Тревога: значение выражения TRUE»;
Предупреждений – дискретных алармов в состоянии «Срабатывание при снятой охране»,
аналоговых алармов в состоянии «Повышение» или «Понижение» и программных
алармов в состоянии «Внимание: идет отсчет задержки выдачи»;
Всего - общее количество включенных дискретных, аналоговых и программных алармов;
Стрелкой синего цвета в списке отмечается текущий выбранный аларм. При двойном
щелчке мышью по аларму в списке производится показ первой карты в списке, на которой найден объект с адресом канала аларма. При нажатии правой клавиши мыши появляется контекстное меню:
Настройка – вызов настроек окна мониторинга алармов. Этот пункт меню доступен
только в режиме редактирования проекта.
Редактировать – открыть редактор алармов для текущего выбранного аларма. Этот
пункт меню доступен только в режиме редактирования проекта.
Просмотр параметров – просмотр настроек текущего аларма в отдельном окне. Журнал событий – просмотр журнала событий с фильтрацией по адресу канала
выбранного аларма.
График – показ графика по адресу канала выбранного аларма. Просмотр истории значений – запрос из базы данных истории значений по адресу
канала выбранного аларма. Данная функция является служебной и предназначена для
обслуживающего персонала.
Замаскировать – включение маскирования выбранного аларма.
Для открытия настроек окна мониторинга алармов выберите в меню «Файл / Настройки проекта…» и откройте вкладку « Алармы»:
АРМ LanMon Руководство пользователя
78
Функция
Описание
procedure LMViewAlarmMonitoring
Показать окно мониторинга алармов.
Пример на C++ скрипте:
LMViewAlarmMonitoring();
Поддержка в скрипте
Следующие функции могут быть вызваны из программы на скрипте:
Окно тревожных сообщений
Окно тревожных сообщений используется для оповещения оператора о срабатывании
алармов. Для открытия окна в режиме редактирования проекта выбери в меню «Просмотр /
Тревожные сообщения…»:
АРМ LanMon Руководство пользователя
79
Функция
Описание
procedure LMRegisterAlarmMessage(Message: String; SoundFile1,SoundFile2,SoundFile3: String; PlayCount,PlayPause: Integer; Addr: String)
Выдать новое сообщение Message в окно тревожных
сообщений и проиграть звуковые файлы указанное количество раз (окно тревожных сообщений будет
открыто).
Message – текстовое сообщение для оператора SoundFile1, SoundFile2, SoundFile3 – три звуковых файла в
формате wav. Проигрываются последовательно. Если указана пустая строка – проигрывание не производится. PlayCount – Количество проигрываний всех звуковых файлов. PlayPause – пауза межу проигрываниями всех звуковых файлов в секундах. AddrАдрес канала тип 1 или тип 2, который будет
показан на картах при выборе этого сообщения в окне
тревожных сообщений. Если указана пустая строка – привязка к адресу канала не производится.
Пример:
LMRegisterAlarmMessage("Авария насоса дом 12Б !","проспект_мира.wav","дом12Б.wav", "авария.wav",1000,2,”1.1.2.10”);
procedure LMConfirmAlarmMessage(action: Integer)
Подтвердить тревогу, выданную в окно тревожных
сообщений. Параметр action:
1 - имитируем нажатие кнопки "Закрыть" в окне 2 - имитируем нажатие кнопки "Очистить" в окне 3 - имитируем нажатие кнопки "Стоп звук" в окне
Новое сообщение добавляется в окно при срабатывании дискретного, аналогового или программного алармов. При добавлении нового сообщения окно открывается автоматически и
начинается звуковое оповещение. После открытия окна тревожных сообщений, оператор должен прочитать сообщения и подтвердить получение информации.
Для подтверждения тревожного сообщения надо нажать кнопку «ОК» или клавишу «ENTER». При этом будет выполнено:
1. Остановка звукового оповещения
2. Закрытие окна тревожных сообщений
3. Занесение в журнал событий события «Подтверждение тревоги» с текущим временем и
со статусом «Служебное». По времени этого события можно определить как быстро
оператор отреагировал на оповещение.
4. Вызов обработчика в программе на скрипте void OnAlarmConfirmation(int action)
Кнопка «Очистить» делает то-же что и кнопка «ОК», но дополнительно удаляет все сообщения из окна тревожных сообщений.
Для прекращения звукового оповещения без закрытия окна и без подтверждения тревоги
нажмите кнопку «Стоп звук».
Поддержка в скрипте
Следующие функции могут быть вызваны из программы на скрипте:
АРМ LanMon Руководство пользователя
80
Пример:
// Имитируем нажатие кнопки «Закрыть» в окне тревожных сообщений
LMConfirmDigitalAlarm(1);
При нажатии любой из кнопок в окне тревожных сообщений вызывается обработчик в программе на скрипте void OnAlarmConfirmation(int action). Для добавления обработчика этого события в редакторе программ выберите в меню «События / Подтверждение реакции в окне тревожных сообщений». Обработчик события получает параметр: номер нажатой кнопки.
Пример обработчика события приведем на C++Script:
// Это обработчик вызывается при нажатии любой из кнопок в окне тревожных сообщений void OnAlarmConfirmation(int action) { // Добавление строки в текстовый файл lanmon.log switch( action ) { case 1: LMProtokol("нажатие кнопки <ОК>"); case 2: LMProtokol("нажатие кнопки <Очистить>"); case 3: LMProtokol("нажатие кнопки <Стоп звук>"); } }
При добавлении сообщения в окно тревожных сообщений вызывается обработчик в программе на скрипте void OnNewAlarmMessage(String Mess, String Addr). Для добавления обработчика этого события в редакторе программ выберите в меню «События / Добавление события в окно тревожных сообщений». Обработчик события получает параметры: Mess - сообщение, Addr - адрес канала тип 1 или тип 2.
Пример обработчика события приведем на C++Script:
//----------------------------------------------------------------­// Это обработчик на добавление события в окно тревожных сообщений //----------------------------------------------------------------­void OnNewAlarmMessage(String Mess, String Addr) { // Добавление строки в текстовый файл lanmon.log LMProtokol("сообщение: " + Mess + " адрес: " + Addr); }
АРМ LanMon Руководство пользователя
81
Группы каналов
Группа каналов это именованный список каналов. В группу могут входить как конечные каналы, так и «маски каналов». Например, если в группу добавлена маска каналов 49.12.1.0 - это означает, что все каналы с адресами 49.12.1.1, 49.12.1.2, 49.12.1.3 и т.д. (вместо «0» - любое
число) входят в группу. Группы каналов создаются один раз на стадии наладки конкретного
проекта. Группы каналов применяются, например, для создания охранных зон. Каналы от охранных датчиков объединяются в группу (охрану зону). Это позволяет просто управлять постановкой на охрану этих каналов и обрабатывать события от них указанным алармом.
Для редактирования групп каналов выберите пункт главного меню «Ресурсы/Группы
каналов…».
В левой части окна групп каналов расположено дерево групп и входящих и их состав
каналов. При изменении выделения в дереве групп, в правой верхней части окна расшифровывается состояние группы или канала. Состояние элемента дерева отображается
дополнительно значками в дереве:
- группа снята с охраны
- группа на охране
- группа или канал в норме
- группа или канал в состоянии срабатывания (определяется алармом для сработки)
- группа или канал в состоянии тревоги (определяется алармом для тревоги)
АРМ LanMon Руководство пользователя
82
- группа или канал в неисправности
- состояние канала «выключен» или «нет данных»
Для добавления новой группы каналов нажмите кнопку . Для удаления группы или
отдельного канала из группы нажмите кнопку . Чтобы распахнуть или собрать дерево групп
нажмите кнопку . Для изменения названия группы наведите на него курсор и щелкните левой клавишей мыши или нажмите кнопку «F2». Для добавления канала в группу окно с деревом
каналов из меню «Ресурсы/Каналы…» и с использованием мыши «перетащите» канал из дерева
каналов в дерево групп. Каждой группе каналов можно назначить два дискретных аларма и тэг. Цифровые алармы
используются для формирования состояний «Сработка» и «Тревога» соответственно (см.
Дискретные алармы). Тэг представляет собой дополнительный параметр – число целого типа,
которое можно привязать к группе каналов. Это число доступно из программы по свойству Tag. Поле тэг может использоваться произвольно по усмотрению программиста. Группе каналов можно назначить канал произвольного типа. Группа сама будет
формировать значение этого канала при любых изменениях ее состояния. Канал может
принимать одно из следующих значений:
0-охрана группы снята 1-группа на охране 2-снята с охраны, есть срабатывание 3-на охране, есть срабатывание 4-снята с охраны, есть тревога 5-на охране, есть тревога
При установленной галочке «Отправлять на сервер» - этот канал будет отправляться на сервер LanMon. Такой режим работы может использоваться для синхронной постановки / снятия охраны
групп между разными рабочими местами в сети.
В программе на скрипте группа каналов представлена классом TGroup. У нее есть следующие свойства:
Name - название группы каналов, заданное в настройках группы Neisprav - признак наличия в группе хоть одного неисправного канала Ohrana - состояние охраны группы каналов State - состояние срабатывания хоть одного канала в группе. Tag - свойство типа int. Используется для хранения произвольного идентификатора,
привязанного к группе каналов.
Динамически создавать группы нельзя. Можно обращаться только к группам, определенным на
этапе редактирования проекта. Список групп представлен классом TGroups. По умолчанию всегда определена глобальная переменная Groups (экземпляр класса TGroups). У TGroups есть свойства Count, Index[] для доступа к каждой группе из списка.
Например, установка охраны группы с номером i осуществляется выражением: Groups.Items[i].Ohrana=true; Номер группы каналов считается с нуля. Состояние охраны можно считывать и устанавливать.
Состояние неисправности группы устанавливается, когда один из ее каналов имеет статус «неисправен датчик», «неисправен контроллер», «значение недостоверно» или «не подключен».
Это свойство доступно из программы только на чтение выражением Groups.Items[i].Neisprav для группы номер i. Значение логическое: false – нет неисправности, true – неисправность.
Состояния нормы, срабатывания и тревоги в группе устанавливаются, когда сработал соответствующий аларм по одному из каналов, входящих в группу. Состояние тревоги более
АРМ LanMon Руководство пользователя
83
приоритетно. Доступно из скрипта только на чтение выражением Groups.Items[i].State для группы номер i. Значение - целое число: 0-норма 1-срабатывание 2-тревога. Пример программы для работы с группами Вы можете найти в файле «..\program\samples\LanMon\c++\groups.cpp».
Состояние охраны группы используется для организации охранных зон. Каналы от охранных датчиков объединяются в группы. Установка и снятие охраны группы осуществляется
из программы на скрипте.
На вкладке «Отладка» расположены следующие кнопки:
 «Поставить на охрану» - ставит на охрану текущую группу;  «Снять с охраны» - снимает с охраны текущую группу;  «Состояние групп» - отобразить в дереве групп текущие состояния всех групп и каналов;
Можно запустить проект на выполнение, оставив открытым окно редактора групп каналов. Таким образом, можно просматривать и управлять состоянием групп в режиме выполнения
проекта.
Пример работы с группами каналов приведен в демонстрационном проекте «Сборник
примеров на языке C++». Этот проект устанавливается в комплекте с АРМ LanMon.
АРМ LanMon Руководство пользователя
84
Программы на скриптовых языках
В АРМ LanMon, начиная с версии 3.00, встроен новый скриптовой движок
Скриптовой язык имеет мультиязычную архитектуру и позволяет программировать с
использованием синтаксиса языков: C++, Pascal, Basic, Java script. Может быть выбран один из языков программирования. Специальная директива #language позволяет переключать язык по
ходу выполнения программы. Это дает возможность, например, использовать функции,
написанные на C++ в программе на Basic.
Скриптовой язык имеет стандартный языковый набор:
Переменные; Константы; Процедуры; Функции (с возможностью вложенности) с переменными/постоянными/умалчиваемыми
параметрами;
Стандартные операторы и объявления (case, try/finally/except, with и т.д.); Стандартные типы данных: целый, дробный, логический, символьный, строковый,
многомерные массивы, множество, variant;
Классы (с методами, событиями, свойствами и индексными свойствами);
АРМ LanMon имеет одну основную программу на скриптовом языке. Ее имя и частота выполнения задаются в настройках проекта на вкладке «Программа». Директива #include языка С++ или USES языка Pascal позволяет включать в текст программы другие программы или
модули. Основная программа содержит все процедуры, функции и обработчики событий
проекта. Проект АРМ LanMon также может содержать выражения на скрипте (например, в динамических объектах карты).
Скрипт является компилируемым. Основная программа АРМ LanMon и все выражения на
скрипте компилируется в псевдокод на этапе начала выполнения проекта, а затем псевдокод исполняется. Компиляция программы из исходных текстов производится при загрузке АРМ
LanMon. Скорость работы скрипта, значительно возросла по сравнению со старым бейсиком.
Для написания программ на скриптовом языке используется специальный редактор
программ. Он встроен в АРМ LanMon. Редактор программ имеет функции пошагового
исполнения программы с просмотром значений переменных после каждого шага выполнения. Для вызова редактора программ выберите пункт меню «Программа / Редактор программ…»
или нажмите кнопку .
В АРМ LanMon встроен механизм отчетов. Каждый отчет тоже имеет свою, отдельную
программу. Программа отчета «видит» все переменные и функции, описанные в основной
программе.
Все выражения на скрипте также «видят» все переменные и функции, описанные в
основной программе. Основное применение выражений на скрипте - в динамическом объекте карт АРМ LanMon.
Чего нет в скрипте для любого языка:
отсутствуют объявления типов (records, classes) в скрипте; нет записей (records), указателей (pointers), множеств (sets) (однако возможно
использование оператора 'IN' - "a in ['a'..'c','d']");
нет типа shortstrings; нет безусловного перехода (GOTO); нет указателей;
Реализация языка C++ имеет свою специфику:
нет восьмеричных констант;
АРМ LanMon Руководство пользователя
85
нет 'break' в операторе SWITCH (SWITCH работает подобно Pascal CASE); операторы '++' и '--' возможны только после переменных, т.е. '++i' не будет работать;
операторы '--', '++' и '=' ничего не возвращают, т.е. 'if(i++)' не будет работать;
все идентификаторы любого языка не чувствительны к регистру; константа NULL это Null из Pascal- используйте nil вместо NULL; при инициализации массива значениями используются квадратные скобки вместо
фигурных;
нет указателей и оператора «->». Их роль выполняют ссылки на объекты, оператор «.»
используется для доступа к свойствам и методам;
Подробное описание скриптовых языков программирования и редактора программ АРМ LanMon находится в документе «Руководство по программированию»: script.pdf
АРМ LanMon Руководство пользователя
86
Доступ к базам данных
В АРМ LanMon есть возможность по доступу к базам данных из программы на скрипте. Для этого в скрипте реализованы классы по работе с механизмом ADO:
TADOConnection = class(TComponent) подключение к базе данных через ADO. В АРМ LanMon есть глобальное подключение к базе данных ADO. Параметры этого подключения задаются на вкладке «ADO» в настройках проекта. Есть глобальная переменная SystemADOConnection: Class
TADOConnection которая обозначает это подключение.
TADOQuery = class(TCustomADODataSet) - SQL запрос к базе данных. Объект запроса можно
динамически создавать оператор new (С++Script), например:
TADOQuery Query1; Query1 = new TADOQuery(nil); Delete Query1;
TADOStoredProc = class(TCustomADODataSet) - класс для выполнения хранимых процедур SQL сервера; TADOTable = class(TCustomADODataSet) - класс для доступа к таблице базы данных;
Все перечисленные классы можно создавать динамически в основной программе АРМ LanMon
или, статически в дизайнере отчетов. Объекты, определенные в дизайнере отчетов «видны»
только для данного отчета.
Пример доступа к Microsoft SQL серверу приводится в демонстрационном проекте, который идет в комплекте с АРМ LanMon.
АРМ LanMon Руководство пользователя
87
Колонка
Возможные значения
1
Секунды
0…59
2
Минуты
0…59
3
Часы
0…23
4
День месяца
1…31
5
День недели
0…7 (0 или 7 это Воскресенье)
6
Месяц
1…12
7
Имя файла с программой
имя функции-обработчика на скрипте. Когда подходит время автопилота эта программа выполняется
Автопилоты
Автопилот – это периодически выполняемое действие. Для настройки автопилота надо
определить время выполнения программы. Автопилоты настраиваются путем написания текстового файла в специальном редакторе. Для добавления или изменения автопилота выберите
пункт меню «Ресурсы/Автопилоты…» - появится окно следующего вида:
В редакторе автопилотов приведены примеры автопилотов. Каждый автопилот описывается строкой, состоящей из семи колонок. Строка автопилота должна завершаться возвратом каретки. Колонки должны разделяться пробелами или табуляцией. В следующей таблице приведено
описание колонок автопилота:
Любая колонка, кроме имени файла программы, может быть символ (*). Это означает – любое значение. Допускаются диапазоны чисел, например «8-11» это означает 8, 9, 10 и 11. Допускаются списки. Списки это диапазоны, разделенные запятой. Например: «1,2,5,9» или «0-4,8-12». Допускается указывать шаг значений после диапазона. Например: «0-23/2» эквивалентно
«0,2,4,6,8,10,12,14,16,18,20,22». Шаг можно указывать после звездочки. Например, чтобы сказать
«каждые 2 часа» укажите: «*/2».
АРМ LanMon Руководство пользователя
88
Примечание: день выполнения программы может быть одновременно задан днем недели и днем
месяца. Например: «* 30 4 1,15 5 * c:\prog.bas» - программа prog.bas будет выполняться в 4:30 утра 1-го и 15-го числа каждого месяца и в каждую пятницу. Автопилот может функцию из основной программы на скрипта с указанным именем и одним параметром типа Integer. Параметр означает номер автопилота в списке (с нуля), вызвавший функцию.
Для вставки имени функции скрипта нажмите кнопку «Вставить обработчик». Для сохранения списка автопилотов нажмите клавишу «ОК». Для отмены произведенных
изменений нажмите клавишу «Отменить».
АРМ LanMon Руководство пользователя
89
Отчет по потреблению ресурсов
АРМ LanMon содержит встроенный отчет по потреблению ресурсов. Отчет позволяет
посчитать расход ресурса (воды, газа, электричества и т.п.) за выбранный период. Исходной информацией для отчета является канал от счетчика типа 1 или 2. Канал должен считать расход нарастающим итогом (интегратор). При построении отчета по нескольким каналам выводится столбчатая диаграмма для наглядного сравнения расхода. Допускается включать в один отчет до
10 каналов.
Для построения отчета в режиме редактирования проекта выберите пункт меню главного
окна «Просмотр / Отчет по потреблению…». Будет показано окно параметров отчета:
При построении отчета с приведенными параметрами мы получим 2 страницы отчета. На первой странице расположены таблица с посуточной разбивкой расхода и таблица со значениями интеграторов на начало и конец отчетного периода и итоговым расходом. На второй странице расположена диаграмма с двумя столбцами итогового расхода за отчетный период. Заголовки
колонок таблиц берутся из названий каналов. Первая страница отчета:
АРМ LanMon Руководство пользователя
90
Построение отчета может занять несколько минут в зависимости от производительности компьютера и размера базы данных.
После выбора каналов можно сохранить параметры отчета в файле с расширением «.rpf».
Последующая загрузка параметров отчета из файла позволит не выбирать каналы повторно.
Для построения отчета в режиме выполнения проекта разместите на карте объект «Кнопка
действия» и укажите действие «Отчет по потреблению»
АРМ LanMon Руководство пользователя
91
При нажатии на кнопку в режиме выполнения проекта будет показано окно параметров
отчета с настройками, загруженными из выбранного файла настроек отчета (exp.rpf на картинке).
АРМ LanMon Руководство пользователя
92
Отчет по работе оборудования
АРМ LanMon содержит встроенный отчет по работе оборудования. Отчет позволяет
посчитать время работы оборудования и количество включений за выбранный период. Исходной информацией для отчета является канал от счетчика типа 1 или 2. Значение канала ноль считается состоянием «выключен», в противном случае «включен». При построении отчета по нескольким каналам выводится столбчатая диаграмма для наглядного сравнения времени
работы. Допускается включать в один отчет до 10 каналов.
Для построения отчета в режиме редактирования проекта выберите пункт меню главного
окна «Просмотр / Отчет по работе оборудования…». Будет показано окно параметров отчета:
При построении отчета с приведенными на картинке параметрами мы получим 2 страницы
отчета. На первой странице расположена таблица с данными о времени работы и количестве включений 5 каналов. На второй странице расположена диаграмма с пятью столбцами времени работы за отчетный период. Заголовки колонок таблиц берутся из названий каналов. Первая страница отчета:
АРМ LanMon Руководство пользователя
93
В строке «% от общего» указан процент времени работы от времени отчетного периода.
Построение отчета может занять несколько минут в зависимости от производительности компьютера и размера базы данных.
После выбора каналов можно сохранить параметры отчета в файле с расширением «.rpf».
Последующая загрузка параметров отчета из файла позволит не выбирать каналы повторно.
Для построения отчета в режиме выполнения проекта разместите на карте объект «Кнопка
действия» и укажите действие «Отчет по работе оборудования»:
При нажатии на кнопку в режиме выполнения проекта будет показано окно параметров
отчета с настройками, загруженными из выбранного файла настроек отчета.
АРМ LanMon Руководство пользователя
94
Генератор отчетов
В АРМ LanMon встроен генератор отчетов значительно более функциональный, чем отчеты RTF. Генератор отчетов создает отчет, используя заранее подготовленный шаблон отчета.
Для создания шаблона отчета используется редактор отчетов. Вызов редактора отчетов производится выбором пункта меню «Отчеты/Редактор отчетов…» или нажатием кнопки
панели инструментов. Генератор отчетов имеет следующие возможности:
Использование любых источников данных, от массива до таблицы БД. Вы можете
передать из своей программы в отчет любые данные, как статические, так и меняющиеся
от записи к записи.
Для построения отчета может использоваться любой источник данных (SQL сервер) через
механизм ADO;
В качестве исходных данных отчета возможно применение значений переменных,
массивов, функция и свойств объектов АРМ LanMon;
В каждый отчет встроена отдельная программа на скрипте. Поддерживаются синтаксис
4х языков - PascalScript, C++Script, JSCript, BasicScript. Программа в отчете используется для управления процессом построения отчета;
Средства отладки кода: пошаговый запуск кода, точки останова; Отчет может содержать диалоговые формы для запроса информации перед построением
отчета. Вы можете создавать автономные отчеты, которые не зависят от приложения;
Редактор скрипта с подсветкой синтаксиса; Экспорт готового отчета в PDF, RTF, XLS, XML, HTML, JPG, BMP, GIF, TIFF, TXT,
CSV, Open Document Format;
Отправка отчета по электронной почте; Бэнд-ориентированный генератор отчетов; Визуальный дизайнер отчетов с поддержкой масштабирования, undo/redo, выносных
линий, линеек. Полностью настраиваемый интерфейс, выполненный в стиле MS Office. Вы можете дать вашим пользователям возможность самостоятельно изменять
существующие отчеты и создавать новые;
Поддерживаются многостраничные отчеты, составные (композитные) отчеты, вложенные
отчеты, многоколоночные отчеты; master-detail-detail отчеты, двухпроходные отчеты, "живые" отчеты;
Наследование отчетов. У вас много отчетов, которые содержат одинаковые элементы
(заголовок, подвал, реквизиты предприятия, логотипы) ? Вынесите общие элементы в
базовый отчет и наследуйте от него все остальные отчеты.
Множество объектов, которые можно использовать в отчете: текст, изображение, линии,
фигуры, диаграммы, штрихкод, сводная таблица, ole объект, richtext объект, объект
"флажок", градиент;
Интерактивные отчеты. Вы можете определить реакцию на щелчок мыши на объекте в
окне предварительного просмотра. Например, можно построить и вывести другой отчет, который показывает детальную информацию по объекту, на котором пользователь
щелкнул мышью;
Шифрование отчетов позволит вам не беспокоиться о конфиденциальности. Прочитать
файл отчета можно, лишь зная пароль;
Редактирование сформированного отчета;
АРМ LanMon Руководство пользователя
95
Подробное описание отчетов содержится в документе «Генератор отчетов» (report.pdf). Примеры
отчетов включены в состав демонстрационных проектов, которые поставляются в комплекте с
АРМ LanMon.
АРМ LanMon Руководство пользователя
96
Библиотеки картинок
Библиотека картинок - это перечень изображений одинаковых размеров. Библиотека
имеет следующие параметры: название, ширину и высоту хранимых картинок в экранных точках
(пикселях). На диске библиотека хранится в двоичном файле с расширением «.il». Файлы библиотек хранятся в поддиректории проекта: «\images\». Библиотека картинок используется для формирования набора состояний с последующим отображением в объекте карты «Набор картинок» и в других объектах карты. Для создания и редактирования библиотек картинок выберите пункт меню «Ресурсы / Библиотеки картинок…»:
В верхней части окна расположена панель с кнопками:
« Новая» - создание новой библиотеки картинок и добавление ее в список. Перед созданием
библиотеки будет выдан запрос о вводе размеров картинок, которые будет хранить библиотека.
Размер картинок измеряется в экранных точках (пикселях).
« Изменить» - редактирование библиотеки (добавление, изменение, удаление картинок). « Удалить» - удаление библиотеки из списка и ее файла с диска. « Экспорт» - сохранить все изображения библиотеки в файле формата .PNG « Импорт» - загрузить все изображения в выбранную библиотеку из файла формата .PNG
Текущие изображения из библиотеки утрачиваются.
При добавлении новой или изменении существующей библиотеки появится окно
редактора:
АРМ LanMon Руководство пользователя
97
В заголовке окна указаны реальные размеры картинок в библиотеке. Каждая картинки имеет номер. В верхней части окна расположены кнопки:
« Добавить» - добавление картинки из файла в конец библиотеки; « Вставить» - вставка картинки из файла в позицию курсора. Увеличивает на 1 номера всех
последующих картинок. Вставка допустима если текущая картинка и все последующие не
используются ни в одном наборе состояний. Данное ограничение связано с тем, что набор состояний ссылается на картинку по ее номеру.
« Заменить» - заменить текущую картинку на картинку из файла; « Удалить» - удаление текущей картинки. Уменьшает на 1 номера всех последующих
картинок. Удаление допустимо если текущая картинка и все последующие не используются ни в
одном наборе состояний. Данное ограничение связано с тем, что набор состояний ссылается на картинку по ее номеру. « Редактор» - вызов внешнего графического редактора. В Windows Vista/7/8/10 выдается окно выбора редактора. В Windows XP вызывается стандартный редактор Paint.
После сохранения измененной картинки внешним редактором, она автоматически заменяет
собой исходную. «Прозрачность из левого верхнего угла» - если эта галочка установлена, то прозрачный цвет
картинки берется из левого верхнего пикселя. Если галочка не установлена, прозрачным
считается цвет оливковый ( Olive). Действует только при добавлении картинок в формате BMP.
В строку статуса выводится информация об использовании текущей картинки в наборах. После создания нового проекта он содержит типовые библиотеки картинок. Для сохранения всех изменений в картинках библиотеки нажмите кнопку «ОК». Для отмены – кнопку «Отменить».
АРМ LanMon Руководство пользователя
98
Набор состояний
Набор состояний – это механизм преобразования качества или значения канала в текст и картинку для отображения на карте. Например: срабатывание теплового пожарного датчика поступает от драйвера в канале, закодированное целочисленным значением: 0 – норма, 1 – пожар. Для отображения на экране надо использовать картинку с эффектом анимации при пожаре. В журнале событий надо регистрировать текстовое описание состояния датчика «Норма» и «Пожар» (вместо цифр 0 и 1). Эту задачу и решает набор состояний.
Набор состояний имеет следующие параметры:
«Название» - название набора состояний. Используется только при редактировании
проекта;
«Библиотека картинок» - одна из библиотек картинок проекта, которая служит
источником картинок для состояний;
«Тип канала 1 по умолчанию» - тип канала 1 (DTYPE), для которого данный набор
используется по умолчанию;
«Список состояний» - перечень всех возможных логических состояний датчика. По
текущему значению канала выбирается одно состояние. Каждое состояние имеет следующие параметры:
o «Название» - название состояния (текстовая строка). Регистрируется в журнале
событий и в подстановке текста %STATE;
o «Качество» - качество канала для выбора данного состояния; o «Операция» - логическая операция над значением канала и заданным значением.
Операция выполняется только если качество «ОК».
o «Значение» - целое число; o «Картинка» - выбор картинки из библиотеки картинок по ее номеру; o «Количество картинок» - Задание количества картинок. Если задано больше
одной картинки, то будет выполняться анимация: картинки меняются по кругу каждые 200 мсек.
o «Цвет» - цвет, связанный с данным состоянием. Используется для изменения
цвета заливки объектов карты: «Прямоугольник», «Эллипс», «Текст», «Область». У объекта карты должен быть указан канал и набор состояний.
Редактор набора состояний:
АРМ LanMon Руководство пользователя
99
Порядок выбора состояния: при изменении значения канала, АРМ LanMon выполняет просмотр списка состояний, начиная со второго. Сначала сравнивается качество канала. Если качество совпало и не равно «ОК» – поиск завершается. Если качество совпало и равно «ОК» ­вычисляется логическое выражение: «текущее_значение_канала Операция Значение». Если результат вычисления «истина» или «не ноль» - поиск прекращается. При вычислении
выражения текущее значение канала приводится к целому типу. Если ни одно из состояний не
подошло – принимается состояние по умолчанию (первое в списке).
Есть 3 способа применения набора состояний:
Способ 1:
1. Добавить на карту объект «Набор состояний» .
2. В его параметрах на вкладке «Отображение» задать адрес канала и выбрать набор
состояний.
Способ 2:
1. Добавить на карту один из объектов «Прямоугольник» , «Эллипс» , «Текст» ,
«Область» .
2. В его параметрах на вкладке «Отображение» цвет заливки укажите «Получить из
набора» и выберите набор состояний.
Способ 3 (подходит только для каналов тип 2):
1. В настройках канала тип 2 на вкладке «Основные» параметр «Тип значения»
установите в «Набор состояний АРМ LanMon».
2. Выбрать набор состояний из появившегося списка.
АРМ LanMon Руководство пользователя
100
Всего в проекте может быть 100 наборов состояний. Для просмотра и изменения наборов
состояний используется редактор наборов состояний. Для его вызова выберите в меню «Ресурсы / Наборы состояний…» или нажмите кнопку панели инструментов:
Список наборов состояний проекта содержит следующие колонки:
«№» - порядковый номер набора от 1 до 100. Объекты карты ссылаются на набор
состояний по его номеру. Поэтому при удалении набора состояний сдвига номеров не производится.
«Название» - название набора состояний; «Библиотека» - название используемой библиотеки картинок; «Состояний» - количество состояний в наборе; «Картинки/Цвета» - перечень всех используемых картинок и цветов; «Карта» - название первой карты, на которой расположен объект, использующий
данный набор состояний;
«Тип канала 1» - тип канала 1 (DTYPE), для которого данный набор состояний
используется по умолчанию (даже если на картах нет объектов, использующих набор);
Самый первый набор состояний в списке называется «Числовые типы». Он используется для
текстовой расшифровки качества каналов тип 1 по умолчанию и не должен изменяться.
Надо отметить, что возможно удаление только неиспользуемого набора состояний (у
которого в колонке «Карта» пусто).
После создания нового проекта он содержит несколько десятков типовых наборов состояний
и библиотек картинок.
Loading...