자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 5호
Check(NFSC203_7_3_5){
Sensor mySensor1{
getObjectProperty(Sensor.type) = "Type1"
}
Sensor mySensor2{
isObjectProperty(Sensor.type) = "Type2"
}
IF
{isFireResistantStructure(SpecificFireFightingBuilding) = TRUE)
AND
{isInstalled(Sensor, FloorSlab) = TRUE
getObjectVerticalDistance(FloorSlab, Sensor) < 8m
}
THEN
{(FA = 65
isInstalled(mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR
(FA = 36
isInstalled(mySensor2, FloorSlab.Space, C, FA) = TRUE)
IF getObjectArea(Sensor.FloorSlab) <= FA
THEN getObjectCount(Sensor) = 1
ELSE IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
}
ELSE IF
{isFireResistantStructure(SpecificFireFightingBuilding) = TRUE)
AND
{isInstalled(Sensor, FloorSlab) = TRUE
AND
getObjectVerticalDistance(FloorSlab, Sensor) >= 8m
AND
getObjectVerticalDistance(FloorSlab, Sensor) < 15m
THEN
{(FA = 50
isInstalled(mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR
(FA = 36
isInstalled(mySensor2, FloorSlab.Space, C, FA) = TRUE)
IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
}
ELSE IF
{isFireResistantStructure(SpecificFireFightingBuilding) != TRUE)
AND
{isInstalled(Sensor, FloorSlab) = TRUE
getObjectVerticalLocation(FloorSlab, Sensor) < 8m
}
THEN
{(FA = 40
isInstalled(mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR
(FA = 23
isInstalled(mySensor2, FloorSlab.Space, C, FA) = TRUE)
IF getObjectArea(Sensor.FloorSlab) <= FA
THEN getObjectCount(Sensor) = 1
ELSE IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
}
ELSE IF
{isFireResistantStructure(SpecificFireFightingBuilding) != TRUE)
AND
getObjectVerticalDistance(FloorSlab, Sensor) >= 8m
AND
getObjectVerticalDistance(FloorSlab, Sensor) < 15m
}
THEN
{(FA = 30
isInstalled(mySensor1, FloorSlab.Space, C, FA) = TRUE)
OR
(FA = 23
isInstalled(mySensor2, FloorSlab.Space, C, FA) = TRUE)
IF getObjectArea(Sensor.FloorSlab) <= 2*FA
THEN getObjectCount(Sensor) >= 2
}
|
Python Code 변환 예정
|