XFS-сервис класса SIU. Модель DORS SE2¶
Внимание
С версии прошивки 1.32 специальная электроника DORS SE2 не работает с ИБП DORS-USE3111, подключенным к ней.
Файлы¶
model_1020_description.xml;
model_1122_description.xml;
model_1132_description.xml;
model_2010 & CashCode_description.xml;
model_2010_description.xml;
model_4010 & UD50 & nocoins_description.xml;
model_4010_description.xml;
model_7010_description.xml;
model_1151_description.xml;
shqPS.SIU.DORS-SE2.exe;
shqSPSIU.dll.
Настройки XFS-провайдера¶
Раздел реестра: [HKLM\Software\XFS\PHYSICAL_SERVICES\SIU-DORS-SE2]
Параметры драйвера:
PORT – номер порта, к которому подключено устройство.
PORT_UPS – номер порта, к которому подключен ИБП DORS-USE3111. Определяется автоматически при установке ПроАТМ/XFS. Если DORS-USE3111 работает через через DORS SE2, то параметр PORT_UPS остается пустым.
ATM_MODEL – номер модели УС, в соответствии с которой настраивается подмножество обслуживаемых портов контроллера, например,
2010
для устройства DORS PTM-2010. Возможные значения:1122
,1122M3
,1132
,2010&CashCode
,2010
,4010&UD50&nocoins
,4010
,7010
,1151
. Конфигурация портов контроллера для выбранной модели (базовая конфигурация) определяется в файлеmodel_%ATM_MODEL%_description.xml
, где %ATM_MODEL% – номер модели УС. Если xml-файл недоступен, конфигурация сервиса признается невалидной, а его дальнейшая работа блокируется.<?xml version="1.0" encoding="windows-1251" standalone="no" ?> <ModelEquippedWith> <LED_IDC /> <LED_PRR /> <SAFEDOOR /> <CABINETDOOR /> <SOPBUTTON /> <KICKSENSOR /> <UPS /> <!-- full list: <LED_IDC /> световая индикация картридера <LED_PRR /> световая индикация чекового принтера <LED_COIN_DISPENSER /> световая индикация слота выдачи монет <LED_CIM_IN /> световая индикация входного лотка депозитного модуля <LED_CIM_OUT /> световая индикация выходного лотка депозитного модуля <LED_NOTE_DISPENSER /> световая индикация шаттера диспенсера <LED_SCANNER /> световая индикация устройства чтения данных (штрихкода) <SHUTTER_CDM /> шаттер модуля выдачи банкнот <SHUTTER_CIM_IN /> шаттер модуля приема банкнот <SHUTTER_CIM_OUT /> шаттер модуля возврата банкнот <REARVIEWDISPLAY /> монитор заднего обзора <FASCIALIGHT /> подсветка на передней панели <HEATER /> нагреватель <SAFEDOOR /> датчик сейфовой двери <CABINETDOOR /> датчик двери оператора <FAKESAFEDOOR /> датчик декоративной двери <SOPBUTTON /> датчика кнопки перехода в режим оператора (кнопка "SOP") <KICKSENSOR /> датчик удара <KICKSENSOR_DOOR /> режим работы датчика удара <CDM_OUTLET /> датчик выдвижения диспенсера (крайнего положения) <CIM_OUTLET /> датчик положения модуля приема наличных <UPS /> ИБП --> </ModelEquippedWith>
В элементе <ModelEquippedWith> перечислены порты контроллера, которые есть в конфигурации.
Если используется индивидуальная конфигурация, то для параметра ATM_MODEL следует указать значение
INDIVIDUAL
. Конфигурация портов контроллера в этом случае определяется значениями следующих параметров реестра:CABINETDOOR – датчик двери оператора;
CDM_OUTLET – датчик выдвижения диспенсера (крайнего положения);
CIM_OUTLET – датчик положения модуля приема наличных;
FAKESAFEDOOR – датчик декоративной двери;
FASCIALIGHT – подсветка на передней панели;
HEATER – нагреватель;
KICKSENSOR – датчик удара;
KICKSENSOR_DOOR – режим работы датчика удара;
LED_CIM_IN – световая индикация входного лотка депозитного модуля;
LED_CIM_OUT – световая индикация выходного лотка депозитного модуля;
LED_COIN_DISPENSER – световая индикация слота выдачи монет;
LED_IDC – световая индикация картридера;
LED_NOTE_DISPENSER – световая индикация шаттера диспенсера;
LED_PRR – световая индикация чекового принтера;
LED_SCANNER – световая индикация устройства чтения данных (штрихкода);
REARVIEWDISPLAY – монитор заднего обзора;
SAFEDOOR – датчик сейфовой двери;
SHUTTER_CDM – шаттер модуля выдачи банкнот;
SHUTTER_CIM_IN – шаттер модуля приема банкнот;
SHUTTER_CIM_OUT – шаттер модуля возврата банкнот;
SOPBUTTON – датчика кнопки перехода в режим оператора (кнопка SOP).
UPS – ИБП.
Возможные значения параметров (кроме KICKSENSOR_DOOR):
default
(значение определено в файлеmodel_%ATM_MODEL%_description.xml
),0
(устройство отсутствует) и1
(устройство имеется в наличии). Возможные значения параметра KICKSENSOR_DOOR:default
(значение определено в файлеmodel_%ATM_MODEL%_description.xml
),0
(работает датчик удара) и1
(датчик удара работает как датчик двери). При использовании индивидуальной конфигурации (ATM_MODEL =INDIVIDUAL
) для всех параметров, указанных выше, необходимо указать значение0
или1
.UPS_CHARGE_THRESHOLD – порог срабатывания UPS_LOW (низкого заряда ИБП). Возможные значения: от
0
до100
(процент заряда батареи).UPS_NAME – наименование модели ИБП, используемого на УС.
Возможные значения:
APC SmartUPS/DORS USE-3111
;HID AUTO
– автоматическое определение имени подключенного ИБП при запуске XFS. Автоопределение доступно:только для ИБП, которые определяются как HID-батарея, и не доступно для других ИБП, даже подключенных по USB (например, IPPON);
только после перезагрузки XFS.SIU (если поменять ИБП при работающих XFS-сервисах, то он автоматически не подхватится).
Если подключено несколько HID-батарей, то выбирается произвольное имя. Значение по умолчанию –
APC SmartUPS/DORS USE-3111
.REARVIEWDISPLAY_INITIAL_STATE – начальное состояние монитора заднего обзора. Возможные значения:
0
,1
(выключено/включено).SHUTTER_CONTROL_TIME – время в секундах, отводимое на повторение попыток управления шаттером (открытие/закрытие). Возможные значения:
10
,15
,30
,60
.SHUTDOWN_TIME – время, которое отведено на отключение DORS-USE3111 после получения статуса батареи UPS_LOW. Возможные значения:
20
,40
,80
,120
. По умолчанию80
.Если после получения статуса батареи UPS_LOW, но до выключения DORS-USE3111 появляется питание, то после истечения времени, указанного в параметре SHUTDOWN_TIME, DORS-USE3111 выключит УС и сразу же его включит.
Если появляется питание, но не приходит статуса батареи UPS_LOW, то после истечения времени, указанного в параметре SHUTDOWN_TIME, DORS-USE3111 УС не выключит.
Нестандартные порты контроллера¶
Порт |
Описание |
---|---|
fwIndicators[11] |
#define WFS_SHQ_REARVIEWDISPLAY 11 Данный порт позволяет управлять монитором заднего обзора. Возможные состояния:
|
Расширение программного интерфейса сервиса¶
С аппаратной точки зрения, контроллер спец. электроники обеспечивает возможность управления такими узлами, как шаттер, сканер штрихкодов, ИБП. Эти узлы не имеют прямого отношения к сервису XFS.SIU, однако активно используются сторонними приложениями. Например, сервису XFS.CDM требуются: шаттер, датчик сейфовой двери и положения CDM, светодиодный индикатор над шаттером.
Разрабатываемое приложение XFS.SIU эксклюзивно захватывает COM-порт, и поэтому вынуждено экспортировать расширенный интерфейс для управления узлами, не входящими в состав портов XFS.SIU.
Упомянутый расширенный интерфейс (API) функционирует в соответствии с концепцией клиент-сервер. Запросы и ответы передаются в виде XML-пакетов через оконные сообщения WM_COPYDATA. Предполагается наличие следующих расширений интерфейса:
управление узлами XFS.CDM;
управление узлами XFS.CIM;
управление сканером штрихкодов.
Ниже описываются протоколы взаимодействия для каждого из расширений.
Расширение программного интерфейса для XFS.CDM¶
Окно, отвечающее за отработку запросов, носит имя «__siu_for_cdm_extended_srvc_».
GET_GENERAL_STATUS¶
Получить общую статусную информацию:
общее состояние сервиса XFS.SIU;
состояние шаттера;
наличие постороннего предмета на слоте выдачи наличных;
состояние сейфовой двери;
положение диспенсера.
Запрос:
<COMMAND val="GET_GENERAL_STATUS" />
<RETURN_WND val="0xhhhhhhhh" />
Ответ:
<RESPONSE val="GET_STATUS" />
<SIU_STATE val="???" />
<SAFEDOOR_STATE val="???" />
<CDM_OUTLET val="???" />
Непосредственных обращений к аппаратуре не происходит. Возвращается (периодичность ~50 мс) наиболее актуальное состояние внутренних переменных сервиса.
RETURN_WND – указатель (handle) клиентского окна, которому будет направлен ответ.
SIU_STATE – общий статус сервиса XFS.SIU. Возможные значения:
OPERABLE
– устройство готово;NOT_AVAILABLE
– устройство не готово;NOT_OPERABLE
– устройство в состоянии аппаратной ошибки.
В случае если SIU_STATE сигнализирует о неготовности устройства, остальные детализированные статусы в пакете могут отсутствовать.
SAFEDOOR_STATE – состояние двери сейфа. Возможные значения:
CLOSED
– закрыт;OPENED
– открыт.
CDM_OUTLET – положение диспенсера. Возможные значения:
EJECTED
– выдвинут наружу;READY
– зафиксирован в рабочем положении.
GET_SHUTTER_STATE¶
Получить информацию о состоянии шаттера
Запрос:
<COMMAND val="GET_SHUTTER_STATE" />
<RETURN_WND val="0xhhhhhhhh" />
Ответ:
<RESPONSE val=" GET_SHUTTER_STATE " />
<SHUTTER_STATE val="???" />
Непосредственных обращений к аппаратуре не происходит. Возвращается наиболее актуальное состояние внутренней переменной сервиса.
RETURN_WND – указатель (handle) клиентского окна, которому будет направлен ответ.
SHUTTER_STATE – состояние шаттера. Возможные значения:
CLOSED
– закрыт;OPENED
– открыт;UNKNOWN
– невозможно определить состояние (поломка/отсутствие контроллера шаттера CDM).
GET_SHUTTER_FOREIGN_SUBSTANCE_INFO¶
Получить информацию о наличии постороннего предмета на слоте выдачи наличных.
Запрос:
<COMMAND val="GET_SHUTTER_FOREIGN_SUBSTANCE_INFO" />
<RETURN_WND val="0xhhhhhhhh" />
Ответ:
<RESPONSE val="GET_SHUTTER_FOREIGN_SUBSTANCE_INFO" />
<FOREIGN_SUBSTANCE val="???" />
Происходит непосредственное обращение к аппаратуре контроллера.
RETURN_WND – указатель (handle) клиентского окна, которому будет направлен ответ.
FOREIGN_SUBSTANCE – наличие постороннего предмета. Возможные значения:
YES
– есть предмет на слоте;NO
– нет предмета на слоте.
SHUTTER_CONTROL¶
Управление шторкой шаттера
Запрос:
<COMMAND val="SHUTTER_CONTROL" />
<NEW_STATE val="???" />
<RETURN_WND val="0xhhhhhhhh" />
Ответ:
<RESPONSE val="SHUTTER_CONTROL" />
<RESULT val="???" />
RETURN_WND – указатель (handle) клиентского окна, которому будет направлен ответ.
NEW_STATE – новое положение шаттера. Возможные значения:
OPENED
– открыт;CLOSED
– закрыт;
RESULT – результат выполнения операции:
OK
– операция выполнена успешно;ERR_SHUTTER_TIMEOUT
– не удалось закрыть шатер за отведенное время (механическая помеха, замятие и т.п.);ERR_SLOT_SENSOR
– сенсор шаттера сигнализирует о наличии постороннего предмета;ERR_OTHER
– другие ошибки.
LED_CONTROL¶
Управление светодиодным индикатором над шаттером
Запрос:
<COMMAND val="LED_CONTROL" />
<NEW_STATE val="???" />
<RETURN_WND val="0xhhhhhhhh" />
Ответ:
<RESPONSE val="LED_CONTROL" />
<RESULT val="???" />
RETURN_WND – указатель (handle) клиентского окна, которому будет направлен ответ.
NEW_STATE – новое состояние индикатора. Возможные значения:
OFF
– погасить;SLOW_FLASH
– подсветка мигает с частотой 1 Гц.;MEDIUM_FLASH
– подсветка мигает с частотой 2 Гц.;QUICK_FLASH
– подсветка мигает с частотой ~4 Гц.;CONTINUOUS
– подсветка горит постоянно.
RESULT – результат выполнения операции:
OK
– операция выполнена успешно;FAILED
– операция не выполнена.
Расширение программного интерфейса для сканера штрихкодов¶
Окно, отвечающее за отработку запросов, носит имя «__siu_for_bcr_extended_srvc_».
Примечание
Команды отправки данных и управления питанием сканера будут проходить успешно даже, если сканер штрихкодов не подключен к контроллеру,
POWER_CONTROL¶
Управление питанием сканера штрихкодов
Запрос:
<COMMAND val="POWER_CONTROL" />
<RETURN_WND val="0xhhhhhhhh" />
<NEW_STATE val="???" />
Ответ:
<RESPONSE val="POWER_CONTROL" />
<RESULT val="???" />
RETURN_WND – указатель (handle) клиентского окна, которому будет направлен ответ.
NEW_STATE – управляющее воздействие. Возможные значения:
ON
– подать питание;OFF
– отключить питание.
RESULT – результат выполнения операции:
OK
– операция выполнена успешно;FAILED
– операция не выполнена.
SEND_DATA¶
Отправить данные сканеру штрихкодов
Запрос:
<COMMAND val="SEND_DATA" />
<RETURN_WND val="0xhhhhhhhh" />
<DATA val="HH HH HH HH .. HH" />
Ответ:
<RESPONSE val="SEND_DATA" />
<RESULT val="???" />
RETURN_WND – указатель (handle) клиентского окна, которому будет направлен ответ.
DATA – отправляемые данные в ASCII HEX-представлении.
RESULT – результат выполнения операции:
OK
– операция выполнена успешно;FAILED
– операция не выполнена.
CLEAR_INPUT_BUFFER¶
Очистить входной буфер (стереть ранее считанные данные, находящиеся в буфере обслуживающего сервиса).
Запрос:
<COMMAND val="CLEAR_INPUT_BUFFER" />
<RETURN_WND val="0xhhhhhhhh" />
Ответ:
<RESPONSE val="CLEAR_INPUT_BUFFER" />
<RESULT val="???" />
RETURN_WND – указатель (handle) клиентского окна, которому будет направлен ответ.
RESULT – результат выполнения операции:
OK
– операция выполнена успешно;FAILED
– операция не выполнена.
RECEIVE_DATA¶
Считать данные из входного буфера. Буфер считанных данных организуется за счет сервиса XFS.SIU. Данные, асинхронно поступающие от сканера штрихкодов, аккумулируются в этом буфере и передаются при получении запроса на считывание. Если на момент поступления запроса буфер уже содержит данные, то ответ формируется моментально. Если данных нет, то они ожидаются в течение указанного таймаута.
Запрос:
<COMMAND val="RECEIVE_DATA" />
<RETURN_WND val="0xhhhhhhhh" />
<TIMEOUT val="ddddd..d" />
Ответ:
<RESPONSE val="RECEIVE_DATA" />
<DATA val="HH HH HH HH .. HH" />
<RESULT val="???" />
RETURN_WND – указатель (handle) клиентского окна, которому будет направлен ответ.
DATA – данные в ASCII HEX-представлении, считанные из буфера (в случае ошибки считывания или срабатывания таймаута это поле отсутствует).
TIMEOUT – таймаут на считывание данных, в миллисекундах.
RESULT – результат выполнения операции:
OK
– операция выполнена успешно;FAILED
– операция не выполнена;TIMEOUT
– истек таймаут.