XFS-сервис класса SIU. Модель DORS USB¶
Файлы¶
shqPS.SIU.DORS-USB.exe;
shqSPSIU.dll;
siu_dors_usb_config_schema.xsd;
siu_dors_usb_configuration.xml.
Настройки XFS-провайдера¶
Раздел реестра: [HKLM\Software\XFS\PHYSICAL_SERVICES\SIU-DORS-USB]
Параметры драйвера:
ATM_MODEL – наименование модели УС, в соответствии с которой настраивается подмножество обслуживаемых портов контроллера. Указывается в виде идентификатора модели. Например,
PTM 1122 M3
для устройства DORS PTM-1122 M3. Актуальный перечень доступных моделей предлагается на выбор в выпадающем списке при установке XFS-сервиса SIU DORS USB и с развитием продуктовой линейки будет пополняться.ups_charge_low – порог достижения состояния «низкий заряд батареи», в процентах. Возможные значения: [
0
…99
]. По умолчанию и в случае некорректного значения принимается значение25
.ups_name – наименование модели ИБП, используемого в УС.
Возможные значения:
no
– если УС не оборудовано ИБП;INNER
– в версии прошивки 1.4 и выше поддерживается встроенная батарея;HID AUTO
– автоматическое определение имени подключенного ИБП при запуске XFS. Автоопределение доступно:только для ИБП, которые определяются как HID-батарея, и не доступно для других ИБП, даже подключенных по USB (например, IPPON);
только после перезагрузки XFS.SIU (если поменять ИБП при работающих XFS-сервисах, то он автоматически не подхватится).
Поддерживаются только HID-устройства класса «Батарея». Перечень доступных моделей составляется динамически и предлагается на выбор в выпадающем списке при установке XFS-сервиса SIU DORS USB. Для ИБП CyberPower рекомендуется значение
Value1500E
. Значение по умолчанию –пустое
.power_task_delay – время задержки выключения питания при низком заряде батареи в секундах. По умолчанию
60
.wdt_enable – активировать функцию сторожевого таймера. Возможные значения:
yes
,no
. По умолчаниюno
.wdt_managed_reboot – выключение сторожевого таймера при выключении XFS-драйвера DORS USB. Возможные значения:
0
(по умолчанию) – если XFS–драйвер DORS USB выключается штатно, то он выключает сторожевой таймер;1
– если XFS–драйвер DORS USB выключается штатно, то он не выключает сторожевой таймер и изменяет значение wdt_managed_reboot на0
.
wdt_reboot_count – количество попыток включения/выключения УС спец. электроникой в случае его нештатного выключения и зависания. По умолчанию
10
. Если установлено четное значение, то процесс начинается с включения УС. Если – нечетное, то – с выключения! Например, значение параметра равно10
, в этом случае спец. электроника сначала включает УС коротким нажатием, а потом пытается его выключить длинным нажатием на кнопку питания. По умолчанию рекомендуется устанавливать значение11
– это позволит сначала выключать предположительно зависший УС, а затем его включать.wdt_timeout – таймаут на ожидание сигнала жизни от ПО при работе функции сторожевого таймера, в миллисекундах. Диапазон допустимых значений – [
40 000
…300 000
]. Значение по умолчанию180000
.Если для параметра wdt_enable установлено значение
yes
, то необходимо устанавливать значение wdt_timeout не меньше, чем время, требуемое на загрузку ОС и XFS-сервисов. В противном случае ПК будет перезагружаться, не успев ни разу корректно загрузиться!В случае некорректного значения настройки, если это отдельно не обговаривается, XFS-сервис переходит в состояние WFS_SIU_DEVNODEVICE и в соответствующем extra-поле статусных структур приводит описание ошибки.
Состав датчиков и индикаторов¶
Контроллер DORS-USB оснащен:
Двумя портами (№1 и №2, в версии прошивки 1.4 и выше – третий порт №5) для подключения внешних световых индикаторов, в случае работы с DORS PMU-820 порт №1 используется для управления реле перезагрузки устройства по питанию.
Двумя внутренними световыми индикаторами, встроенными в плату (номера портов №3 и №4, технически могут быть выведены на внешнюю подсветку). Светодиод на порте №3 показывает состояние XFS-драйвера спец. электроники DORS USB. Cветодиод на порте №4 привязан к сторожевому таймеру, конфигурация данного светодиода пишется во флеш-память устройства.
Начиная с версии прошивки 1.5 реализована следующая индикация светодиодов на портах №3 и 4:
на порте №3 (нижний светодиод):
светодиод горит постоянно – XFS-драйвер запущен (фактически светодиод загорается на полсекунды при каждом обращении к сторожевому таймеру, что при частом обращении незаметно);
светодиод не горит – XFS-драйвер не запущен.
на порте №4 (верхний светодиод):
светодиод горит постоянно – сторожевой таймер запущен;
светодиод мигает часто – сторожевой таймер подал сигнал включения/выключения УС и попытки закончились (их количество определено параметром wdt_reboot_count);
светодиод мигает редко – сторожевой таймер отключен (по умолчанию).
Пятью портами (№№1–5, в версии прошивки 1.4 и выше – семью портами №№1–7) для подключения датчиков бинарной логики (цепь замкнута/разомкнута).
Рисунок 19. DORS USB (вид сбоку). Светодиоды и порты для подключения внешних световых индикаторов¶
1 – порт №1 для подключения внешних световых индикаторов; |
3 – светодиод на порте №3; |
2 – порт №2 для подключения внешних световых индикаторов; |
4 – светодиод на порте №4. |
Рисунок 20. DORS USB (вид сверху). Порты для подключения датчиков бинарной логики¶
В случае нарушения цепи подключения датчика, его состояние будет отображаться в соответствии с определением разомкнутого состояния. При нарушении цепи подключения светового индикатора, теряется возможность его зажигать. Контроллер не предусматривает обнаружение нарушений в цепях подключения датчиков и индикаторов.
Состав и назначение датчиков и световых индикаторов зависят от модели обслуживаемого УС и приводятся в конфигурационном файле .\XFS\siu_dors_usb_configuration.xml
. Данный файл имеет формат XML, определение схемы находится в файле .\XFS\siu_dors_usb_config_schema.xsd. В случае необходимости, данный файл можно редактировать, изменяя или дополняя конфигурации контроллера. Во избежание ошибок синтаксиса, настоятельно рекомендуется использовать XML-редакторы, поддерживающие валидацию, автозаполнение и подсказки при редактировании на основании представленной XSD-схемы.
Ниже на примерах демонстрируется структура файла:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<dors-usb xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xsi:noNamespaceSchemaLocation=".\siu_dors_usb_config_schema.xsd">
<Configuration id="PTM 1122 M1">
...
</Configuration>
<Configuration id="PTM 1122 M2">
...
</Configuration>
<Configuration id="ADM 1142">
...
</Configuration>
...
</dors-usb>
Корневой элемент <dors-usb>
содержит такое количество элементов <Configuration>
, сколько конфигураций контроллера известно в данной сборке XFS-сервисов. Элемент <Configuration>
содержит обязательный атрибут id, в котором записывается строковый идентификатор. Атрибуты id служат для перечисления доступных конфигураций в инсталляторе, а также XFS-сервисом для поиска и прочтения соответствующей установленной конфигурации контроллера.
Внутри элемента <Configuration>
перечисляются задействованные датчики и индикаторы. Для этого служат сложенные группы <GuidLights>
для определения световых индикаторов и <SWs>
для определения датчиков:
<Configuration id="..">
<GuidLights>
...
</GuidLights>
<SWs>
...
</SWs>
</Configuration>
Допускается отсутствие любой из выше обозначенных групп.
Определение световых индикаторов выглядит следующим образом:
<GuidLights>
<LED hw_id="1" xfs_id="GuidLightCardunit"/>
...
</GuidLights>
Внутри группы <GuidLights>
перечисляются элементы LED, отвечающие за определение световых индикаторов, подключенных к указанным порт.
В атрибуте hw_id
указывается номер физического порта светового индикатора от 1 до 5. Порты №1 и №2 (в версии прошивки 1.4 и выше – №5) обслуживают внешнюю световую индикацию. К портам №3 и №4 подключаются внутренние индикаторы, расположенные на плате контроллера (однако в дальнейшем могут задействоваться для обслуживания внешней индикации).
В атрибуте xfs_id
записывается строковый идентификатор индикатора, определяющий его тип в системе XFS. Возможные значения:
|
|
Определение датчиков бинарной логики выглядит следующим образом:
<SWs>
<SW hw_id="1" xfs_id="DoorCabinet">
<State_0>Closed</State_0>
<State_1>Open</State_1>
</SW>
<SW hw_id="2" xfs_id="DoorSafe">
<State_0>Closed</State_0>
<State_1>Open</State_1>
</SW>
<SW hw_id="3" xfs_id="SensorSeismic">
<State_0>Off</State_0>
<State_1>On</State_1>
</SW>
<SW hw_id="4" xfs_id="SensorOperatorSwitch">
<State_0>Supervisor</State_0>
<State_1>Run</State_1>
</SW>
</SWs>
Внутри группы <SWs>
перечисляются элементы SW
, отвечающие за определение датчиков, подключенных к указанным портам.
В атрибуте hw_id
указывается номер физического порта датчика от 1 до 5 (в версии прошивки 1.4 и выше – до 7).
В атрибуте xfs_id
записывается строковый идентификатор датчика, определяющий его тип в системе XFS. Возможные значения:
|
|
|
Внутри элемента <SW>
определяются идентификаторы состояний при замыкании и размыкании цепи. Вложенный элемент <State_0>
определяет состояние датчика при замыкании цепи, а элемент <State_1>
– при ее размыкании. Возможные состояния с привязкой к определенным типам датчиков:
SensorOperatorSwitch –
Run
,Maintenance
,Supervisor
;SensorTamper –
Off
,On
;SensorIntTamper –
Off
,On
;SensorSeismic –
Off
,On
;SensorHeat –
Off
,On
;SensorProximity –
Present
,NotPresent
;SensorAmblight –
VeryDark
,Dark
,MediumLight
,Light
,VeryLight
;SensorEnhancedAudio –
Present
,NotPresent
;SensorBootSwitch –
Off
,On
;SensorConsumerDisplay –
Off
,On
,DisplayError
;SensorOperatorCallButton –
Off
,On
;SensorHandsetSensor –
OffTheHook
,OnTheHook
;SensorGeneralInputPort –
Off
,Gpp1
,Gpp2
,Gpp3
,Gpp4
,Gpp5
,Gpp6
,Gpp7
,Gpp8
,Gpp9
,Gpp10
,Gpp11
,Gpp12
,Gpp13
,Gpp14
,Gpp15
,Gpp16
;DoorCabinet –
Closed
,Open
,Locked
,Bolted
;DoorSafe –
Closed
,Open
,Locked
,Bolted
;DoorVandalShield –
Closed
,Open
,Locked
,Service
,Keyboard
,Ajar
,Jammed
;DoorCabinetFront –
Closed
,Open
,Locked
,Bolted
;DoorCabinetRear –
Closed
,Open
,Locked
,Bolted
;DoorCabinetLeft –
Closed
,Open
,Locked
,Bolted
;DoorCabinetRight –
Closed
,Open
,Locked
,Bolted
;IndicatorOpenClose – Closed, Open;
IndicatorFasciaLight –
Off
,On
;IndicatorHeating –
Off
,On
;IndicatorConsumerDisplayBacklight –
Off
,On
;IndicatorSignageDisplay –
Off
,On
;IndicatorTransIndicator –
Off
,Lamp1
,Lamp2
,Lamp3
,Lamp4
,Lamp5
,Lamp6
,Lamp7
,Lamp8
,Lamp9
,Lamp10
,Lamp11
,Lamp12
,Lamp13
,Lamp14
,Lamp15
,Lamp16
.
XSD схема не позволяет проверить корректность записанного состояния по отношению к типу датчика, указанному в атрибуте xfs_id
. Однако такая валидация будет производиться XFS-сервисом при прочтении конфигурации контроллера.
Любые ошибки, которые будут встречены в файле конфигурации, приведут к переводу сервиса в состояние WFS_SIU_DEVNODEVICE.
Индикатор WFS_SIU_AUDIO связан с встроенной в ПК аудио картой, звук выводится на динамики, смонтированные в лицевую панель ИПТ. Источником звуков, проигрываемых при воздействии на данный индикатор, служат звуковые файлы, расположенные в каталоге C:\FS365\XFS\Snd. Формат файлов – Microsoft Wave Sound Format. В случае необходимости данные файлы подлежат кастомизированию.
Поддержка ИБП сводится к информированию о переходе к питанию от батареи, а также о низком заряде батареи.
Информационные запросы¶
WFS_INF_SIU_STATUS¶
Индикатор WFS_SIU_AUDIO при опросе статуса возвращает значение WFS_SIU_OFF, если звук не проигрывается, либо происходит проигрывание одиночного сигнала. Если подана команда повторяющегося проигрывания сигнала (добавочный флаг WFS_SIU_CONTINUOUS), статус индикатора WFS_SIU_AUDIO принимает значение, соответствующее типу проигрываемого звука.
Поле lpszExtra формируется согласно стандарту CEN/XFS и содержит ниже перечисленные поля:
VENDOR – значение
DORS [SYSTEMA]
;PRODUCT – значение
ProAtm/XFS
;VERSION – версия сборки ПроАТМ/XFS, например,
5.7.4.25610
;DEVICE – значение
DORS USB
;SERIAL – серийный номер, состоящий из 12 символов, например,
67214147565089710672FF52
;FW – информация о номере прошивки;
UPS_MODEL – идентификатор модели обслуживаемого ИБП (может отсутствовать);
DETECTED_PROBLEM – выявленные ошибки конфигурации, по причине которых сервис находится в состоянии WFS_SIU_DEVNODEVICE (может отсутствовать).
Если устройство отключено, то состояние всех датчиков будет WFS_SIU_NOT_AVAILABLE.
WFS_INF_SIU_CAPABILITIES¶
Поле lpszExtra содержит данные аналогично передаваемым в ответе на команду WFS_INF_SIU_STATUS. Если устройство отключено, то состояние всех датчиков будет WFS_SIU_NOT_AVAILABLE.