본문으로 건너뛰기

Lift Control API

Lift를 관리하기 위한 API로 floorLevel 관리를 통해 Lift 제한 및 관리할 수 있습니다.



구조체​

BS2Lift​

typedef struct {
BS2_LIFT_ID liftID;
char name[BS2_MAX_LIFT_NAME_LEN];

BS2_DEVICE_ID deviceID[BS2_MAX_DEVICES_ON_LIFT];

uint32_t activateTimeout;
uint32_t dualAuthTimeout;

uint8_t numFloors;
uint8_t numDualAuthApprovalGroups;
BS2_DUAL_AUTH_APPROVAL dualAuthApprovalType;
BS2_BOOL tamperOn;

BS2_BOOL dualAuthRequired[BS2_MAX_DEVICES_ON_LIFT];
BS2_SCHEDULE_ID dualAuthScheduleID;

BS2LiftFloor floor[BS2_MAX_FLOORS_ON_LIFT];
BS2_ACCESS_GROUP_ID dualAuthApprovalGroupID[BS2_MAX_DUAL_AUTH_APPROVAL_GROUP_ON_LIFT];

BS2LiftAlarm alarm[BS2_MAX_ALARMS_ON_LIFT];
BS2LiftAlarm tamper;

BS2_LIFT_ALARM_FLAG alarmFlags;
uint8_t reserved[3];
} BS2Lift;
  1. liftID

    lift 식별자입니다.

  2. name

    BioStar 애플리케이션에서 보이는 Lift 이름입니다.

  3. deviceID

    lift 장치와 연결된 장치 식별자입니다.

  4. activateTimeout

    lift가 열린 후 자동으로 닫힐 때까지 걸리는 시간으로 초 단위입니다.

  5. dualAuthTimeout

    1번째 사용자의 인증이 끝나고 2번째 사용자의 인증을 시도하기까지 대기하는 시간으로 초 단위입니다.

  6. numFloors

    lift에 속한 Floor의 개수입니다.

  7. numDualAuthApprovalGroups

    이중 출입 권한을 가지는 그룹의 총 개수입니다.

  8. dualAuthApprovalType

    출입을 허용할 때 사용자의 출입 그룹이 이중 인증 출입 권한을 가지는 그룹에 속해있는지 검사하는 flag입니다.

    값설명
    0없음
    1마지막 사용자의 권한 확인
  9. tamperOn

    현재 tamper 상태 여부입니다.

  10. dualAuthRequired

    장치의 이중 인증 필요 여부입니다.

  11. dualAuthScheduleID

    이중 인증이 필요한 타임 스케줄로 이중 인증이 필요 없다면 0을, 항상 필요하면 1을, 아니면 적절한 타임 스케줄 식별자를 지정할 수 있습니다.

  12. floor

    lift의 floor 정보입니다. 최대 255까지 설정할 수 있습니다.

  13. dualAuthApprovalGroupID

    이중 출입 권한을 가지는 그룹을 나열한 리스트로 최대 16까지 설정할 수 있습니다.

  14. alarm

    lift의 sensor가 감지되었을 때 동작할 경보로 최대2개까지 설정할 수 있습니다.

  15. tamper

    lift의 tamper가 감지되었을 때 동작할 경보 정보입니다.

  16. alarmFlags

    경보 flag입니다.

  17. reserved

    예약된 공간입니다.

BS2LiftFloor​

typedef struct {
BS2_DEVICE_ID deviceID;
uint8_t port;
BS2FloorStatus status;
} BS2LiftFloor;
  1. deviceID

    장치 식별자입니다.

  2. port

    장치의 입력 포트입니다

  3. status

    Floor 상태 정보입니다.

BS2FloorStatus​

typedef struct {
BS2_BOOL activated;
BS2_FLOOR_FLAG activateFlags;
BS2_FLOOR_FLAG deactivateFlags;
} BS2FloorStatus;
  1. activated

    대기상태에서 열림과 닫힘의 상태 정보입니다.

  2. activateFlags

    floor가 열릴 때의 우선 순위로 닫힐 때의 우선 순위보다 낮으면 수행되지 않습니다. 예를 들어, 관리자 권한으로 floor를 닫은 상태라면(OPERATOR), 모든 사용자의 출입이 허용되지 않습니다. 유의해야 할 사항으로 activateFlags와 deactivateFlags는 기본 우선 순위(NONE)를 제외하고는 동일 우선 순위를 가질 수 없습니다.

    값설명우선순위
    0기본보통
    1일정약간 높음
    4관리자높음
    2긴급매우 높음
  3. deactivateFlags

    floor가 닫힐 때의 우선 순위로 열릴 때의 우선 순위보다 낮으면 수행되지 않습니다

    값설명우선순위
    0기본보통
    1일정약간 높음
    4관리자높음
    2긴급매우 높음

BS2LiftSensor​

typedef struct {
BS2_DEVICE_ID deviceID;
uint8_t port;
BS2_SWITCH_TYPE switchType;
uint16_t duration;
BS2_SCHEDULE_ID scheduleID;
} BS2LiftSensor;
  1. deviceID

    장치 식별자입니다.

  2. port

    장치의 입력 포트입니다.

  3. switchType

    입력 신호 유형입니다.

    값설명
    0대기 상태에서 열림 상태로 유지
    1대기 상태에서 닫힘 상태로 유지
  4. duration

    입력 신호를 화재 경보 상태로 판단하기까지 걸리는 시간으로 millisecond 단위입니다.

  5. scheduleID

    lift를 동작하기 위한 타임 스케줄입니다.

BS2LiftAlarm​

typedef struct {
BS2LiftSensor sensor;
BS2Action action;
} BS2LiftAlarm;
  1. sensor

    lift의 열림/닫힘 상태를 감지하는 센서입니다

  2. action

    lift가 수행하는 action입니다.

BS2LiftStatus​

typedef struct {
BS2_LIFT_ID liftID;
uint16_t numFloors;
BS2_LIFT_ALARM_FLAG alarmFlags;
BS2_BOOL tamperOn;
BS2FloorStatus floors[BS2_MAX_FLOORS_ON_LIFT];
} BS2LiftStatus;
  1. liftID

    lift 식별자입니다.

  2. numFloors

    lift에 속한 Floor 개수입니다.

  3. alarmFlags

    현재 lift의 경보 상태 정보입니다.

    값설명
    0경보 없음
    1첫 번째 경보
    2두 번째 경보
    4Tamper
  4. tamperOn

    현재 tamper 상태 정보입니다.

  5. floors

    floor를 나열한 리스트로 최대 255까지 설정할 수 있습니다.

BS2FloorLevel​

typedef struct {
BS2_FLOOR_LEVEL_ID id; // id >= 32768 (BS2_ACCESS_LEVEL_ID < 32768)
char name[BS2_MAX_FLOOR_LEVEL_NAME_LEN];
uint8_t numFloorSchedules;
uint8_t reserved[3];
BS2FloorSchedule floorSchedules[BS2_MAX_FLOOR_LEVEL_ITEMS];
} BS2FloorLevel;
  1. id

    Floor 레벨 식별자입니다. id >= 32768 (BS2_ACCESS_LEVEL_ID < 32768)

  2. name

    BioStar 애플리케이션에서 보이는 Floor 레벨 이름입니다.

  3. numFloorSchedules

    Floor 레벨에 속한 Floor 타임 스케줄 개수입니다.

  4. reserved

    예약된 공간입니다.

  5. floorSchedules

    Floor 레벨에 속한 Floor 타임 스케줄 리스트입니다

BS2FloorSchedule​

typedef struct {
BS2_LIFT_ID liftID;
uint16_t floorIndex;
uint8_t reserved[2];
BS2_SCHEDULE_ID scheduleID;
} BS2FloorSchedule;

  1. liftID

    lift 식별자입니다.

  2. floorIndex

    floor 식별자입니다.

  3. reserved

    예약된 공간입니다.

  4. scheduleID

    타임 스케줄 식별자입니다.

이 페이지가 도움이 되었나요?