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.