1
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 1 항 1호
1. 배관 내 사용압력이 1.2 ㎫ 미만일 경우에는 다음 각 목의 어느 하나에 해당하는 것 또는 동등 이상의 강도·내식성 및 내열성을 가진 것<신설 2013.6.10>
//간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 1항 1호
Check(NFSC503A_8_1_1){
IF CS THEN KS
}
CS{
isObjectProperty(Pipe .workingPressure) < 1.2
}
KS{
getResult(NFSC503A_8_1_1_가)=TRUE
getResult(NFSC503A_8_1_1_나)=TRUE
getResult(NFSC503A_8_1_1_다)=TRUE
}
Python Code 변환 예정
2
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 1 항 1호 가 목
가. 배관용 탄소강관(KS D 3507)
//간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 1항 1호
Check(NFSC503A_8_1_1_가){
KS
}
KS{
getObjectProperty(Pipe .Material) = "KS_D_3507"
}
Python Code 변환 예정
3
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 1 항 1호 나 목
나. 이음매 없는 구리 및 구리합금관(KS D 5301). 다만, 습식의 배관에 한한다.
//간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 1항 1호
Check(NFSC503A_8_1_1_나){
IF CS THEN KS
}
CS{
isObjectProperty(Pipe .systemType) = "WetPipe SprinklerSystem"
}
KS{
getObjectProperty(Pipe .Material) = "KS_D_5301"
}
Python Code 변환 예정
4
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 1 항 1호 다 목
다. 배관용 스테인리스강관(KS D 3576) 또는 일반배관용 스테인리스강관(KS D 3595)
//간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 1항 1호
Check(NFSC503A_8_1_1_다){
KS
}
KS{
getObjectProperty(Pipe .Material) = "KS_D_3595"
}
Python Code 변환 예정
5
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 1 항 2호
2. 배관 내 사용압력이 1.2 ㎫ 이상일 경우에는 압력배관용탄소강관(KS D 3562) 또는 이와 동등 이상의 강도·내식성 및 내열성을 가진 것<신설 2013.6.10>
//간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 1항 2호
Check(NFSC503A_8_1_2){
IF CS THEN KS
}
CS{
isObjectProperty(Pipe .workingPressure) >= 1.2
}
KS{
getObjectProperty(Pipe .Material) = "KS D 3562"
}
Python Code 변환 예정
6
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 2 항
② 제1항에도 불구하고 다음 각 호의 어느 하나에 해당하는 장소에는 국민안전처장관이 정하여 고시한 「소방용합성수지배관의 성능인증 및 제품검사의 기술기준」에 적합한 소방용 합성수지배관으로 설치할 수 있다.<개정 2013.6.10, 2015.1.23.>
//간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 2항
Check(NFSC503A_8_2){
IF CS THEN KS1 OR KS2
}
CS{
getResult(NFSC503A_8_2_2) = TRUE
OR getResult(NFSC503A_8_2_3) = TRUE
}
KS1{
getResult(NFSC503A_8_1) = TRUE
}
KS2{
isObjectProperty(Pipe .isSyntheticResinForfirefighting) = TRUE
}
Python Code 변환 예정
7
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 2 항 2호
2. 다른 부분과 내화구조로 구획된 덕트 또는 피트의 내부에 설치하는 경우
Check(NFSC103A_8_2_2){
KS
}
KS{
Duct myDcut{
isFireResistantStructure(Duct) = TRUE
}
isInstalled(Pipe , Duct) = TRUE
OR isInstalled(Pipe , Pit.Inside) = TRUE
}
Python Code 변환 예정
8
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 2 항 3호
3. 천장(상층이 있는 경우에는 상층바닥의 하단을 포함한다. 이하 같다)과 반자를 불연재료 또는 준불연재료로 설치하고 그 내부에 습식으로 배관을 설치하는 경우
//간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 2항 3호
Check(NFSC503A_8_2_3){
KS
}
KS{
SprinklerSystem mySprinklerSystem{
isObjectProperty(SprinklerSystem.type) = "WetPipe SprinklerSystem"
}
(isObjectProperty(Ceiling.Material.nonCombustibility)=TRUE
OR isObjectProperty(Ceiling.Material.quasiNonCombustibility)=TRUE)
(isObjectProperty(CeilingCovering.Material.nonCombustibility)=TRUE
OR isObjectProperty(CeilingCovering.Material.quasiNonCombustibility)=TRUE)
isInstalled(mySprinklerSystem, Ceiling)=TRUE
isInstalled(mySprinklerSystem, CeilingCovering)=TRUE
}
Python Code 변환 예정
9
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 4 항 1호
1. 공기고임이 생기지 아니하는 구조로 하고 여과장치를 설치할 것
//간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 4항 1호
Check(NFSC503A_8_4_1){
KS
}
KS{
Pipe myPipe {
isInstalled(Pump.Inlet, Pipe ) = TRUE
}
isInstalled(myPipe ,Filter) = TRUE
}
Python Code 변환 예정
10
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 4 항 2호
2. 수조가 펌프보다 낮게 설치된 경우에는 각 펌프(충압펌프를 포함한다)마다 수조로부터 별도로 설치할 것
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 4항 2호
Check(NFSC103A_8_4_2){
IF CS THEN KS
}
CS{
getObjectVerticalLocation(Pump, Tank) < 0
}
KS{
Pipe myPipe {
isInstalled(Pump.Inlet, Pipe ) = TRUE
}
isInstalled(myPipe , Pump.One) = TRUE
}
Python Code 변환 예정
11
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 6 항 1호
1. 성능시험배관은 펌프의 토출측에 설치된 개폐밸브 이전에서 분기하여 설치하고, 유량측정장치를 기준으로 전단 직관부에 개폐밸브를 후단 직관부에는 유량조절밸브를 설치할 것
// 옥내소화전설비의 화재안전기준(NFSC 102) 6조 (배관 등) 8항 1호
Check(NFSC102_6_8_1){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .isForTest) = TRUE
}
Valve myValve{
isObjectProperty(Valve.isShutoffValve) = TRUE
isInstalled(Valve, Pump.Outlet) = TRUE
}
Valve myValve2{
isObjectProperty(Valve.isShutoffValve) = TRUE
isInstalled(Valve, Pump.Outlet) = FALSE
}
Valve myValve3{
isObjectProperty(Valve.isFloatControlValve) = TRUE
}
isDiverged(Pump, myPipe ) = TRUE
getObjectDistance(StraightPipe Line, myPipe ) < getObjectDistance(StraightPipe Line, myValve)
isInstalled(myValve2, myPipe ) = TRUE
isInstalled(myValve3, myPipe ) = TRUE
}
Python Code 변환 예정
12
간이스프링클러설비의 화재안전기준(NFSC 103A) 제 8조 6 항 2호
2. 유량측정장치는 성능시험배관의 직관부에 설치하되, 펌프의 정격토출량의 175% 이상 측정할 수 있는 성능이 있을 것
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 6항 2호
Check(NFSC103A_8_6_2){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .isForTest) = TRUE
}
isConnectedTo(myPipe , DischargeMeasuringEquipment) = TRUE
getObjectProperty(DischargeMeasuringEquipment.measurementCapacity) = DME
getObjectProperty(Pump.ratedDischargePressure) = PDP
PDP*1.75 <= DME
}
Python Code 변환 예정
13
건축물의 에너지절약설계기준 제 5조 12호 가 목
가. "신·재생에너지”라 함은「신에너지 및 재생에너지 개발·이용·보급촉진법」에서 규정하는 것을 말한다.
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 2항 3호
Check(NFSC102_6_2_3){
KS
}
KS{
SprinklerSystem mySprinklerSystem{
isObjectProperty(SprinklerSystem.type) = "WetPipe SprinklerSystem"
}
(isObjectProperty(Ceiling.Material.nonCombustibility)=TRUE
OR isObjectProperty(Ceiling.Material.quasiNonCombustibility)=TRUE)
(isObjectProperty(CeilingCovering.Material.nonCombustibility)=TRUE
OR isObjectProperty(CeilingCovering.Material.quasiNonCombustibility)=TRUE)
isInstalled(mySprinklerSystem, Ceiling)=TRUE
isInstalled(mySprinklerSystem, CeilingCovering)=TRUE
}
Python Code 변환 예정
14
건축물의 에너지절약설계기준 제 5조 13호
13. "공공기관”이라 함은 산업통상자원부고시 「공공기관 에너지이용합리화 추진에 관한 규정」에서 정한 기관을 말한다.
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 2항 3호
Check(NFSC102_6_2_3){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .usage) = "WaterSupplyPipe "
}
isObjectProperty(Pipe .isShared) = FALSE
}
Python Code 변환 예정
15
건축물의 에너지절약설계기준 제 5조 2호
2. "권장사항”이라 함은 건축물을 건축하는 건축주와 설계자 등이 건축물의 설계 시 선택적으로 적용이 가능한 사항을 말한다.
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 5항
Check(NFSC102_6_5){
IF CS THEN KS
}
CS{
isInstalled(Pump.Inlet, Pipe ) = TRUE
}
KS{
getResult(NFSC503A_8_4_1) = TRUE
getResult(NFSC503A_8_4_2) = TRUE
}
Python Code 변환 예정
16
건축물의 에너지절약설계기준 제 5조 5호
5. "고효율에너지기자재인증제품”(이하 "고효율인증제품”이라 한다)이라 함은 산업통상자원부 고시 「고효율에너지기자재 보급촉진에 관한규정」(이하 "고효율인증규정”이라 한다)에서 정한 기준을 만족하여 에너지관리공단에서 인증서를 교부받은 제품을 말한다.
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 6항
Check(NFSC102_6_6){
IF (CS1 THEN KS1) OR (CS2 THEN KS2) OR (CS3 THEN KS3) OR (CS4 THEN KS4)
}
Port myPort{
Port.typeForWater = "IndoorFireHydrantDischarge"
}
Pipe myPipe {
isObjectProperty(Pipe .isBranchLines) = TRUE
isConnectedTo(Pipe , myPort) = TRUE
}
Pipe myPipe 2{
isObjectProperty(Pipe .isRiser) = TRUE
}
CS1{
getObjectProperty(myPipe .systemType) = "HoseReelHydrantSystem"
}
KS1{
getObjectProperty(myPipe .diameter) >= 25mm
}
CS2{
getObjectProperty(myPipe .systemType) != "HoseReelHydrantSystem"
}
KS2{
getObjectProperty(myPipe .diameter) >= 40mm
}
CS3{
getObjectProperty(myPipe 2.systemType) = "HoseReelHydrantSystem"
}
KS3{
getObjectProperty(myPipe 2.diameter) >= 32mm
}
CS4{
getObjectProperty(myPipe 2.systemType) != "HoseReelHydrantSystem"
}
KS4{
getObjectProperty(myPipe 2.diameter) >= 50mm
}
Python Code 변환 예정
17
건축물의 에너지절약설계기준 제 5조 6호
6. "완화기준”이라 함은 「건축법」, 「국토의 계획 및 이용에 관한 법률」 및 「지방자치단체 조례」등에서 정하는 조경설치면적, 건축물의 용적률 및 높이제한 기준을 적용함에 있어 완화 적용할 수 있는 비율을 정한 기준을 말한다.
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 7항
Check(NFSC503A_6_7){
IF CS THEN KS
}
CS{
Pipe .isShared(SimpleSprinklersystem.Pipe , FireDepartmentConnectionSystem.Pipe ) = TRUE
}
KS{
Pipe myPipe 1{
isObjectProperty(Pipe .isRiser) = TRUE
}
Port myPort{
getObjectProperty(Port.typeForWater) = "Delivery"
Pipe myPipe 2{
isConnectedTo(Pipe , myPort) = TRUE
}
isObjectProperty(myPipe 1.diameter) >= 100 mm
getObjectProperty(myPipe 2.diameter) >= 65 mm
}
Python Code 변환 예정
18
건축물의 에너지절약설계기준 제 5조 9호 가 목
가. "거실”이라 함은 건축물 안에서 거주(단위 세대 내 욕실·화장실·현관을 포함한다)·집무·작업·집회·오락 기타 이와 유사한 목적을 위하여 사용되는 방을 말하나, 특별히 이 기준에서는 거실이 아닌 냉·난방공간 또한 거실에 포함한다.
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 9항
Check(NFSC503A_6_9){
KS
}
KS{
Valve myValve1{
isObjectProperty(Valve.isCheckValve) = TRUE
}
PP = getObjectProperty(Pump.shutoffPressure)
Valve myValve2{
isObjectProperty(Valve.isReliefVavle) = TRUE
isObjectProperty(Valve.reliefPressure) < PP
}
isInstalledInOrder(myValve1, Pipe , Pump) = TRUE
isObjectProperty(Pipe .diameter) >= 20mm
isInstalled(myValve2, Pipe ) = TRUE
}
Python Code 변환 예정
19
건축물의 에너지절약설계기준 제 5조 9호 거 목
거. "투광부"라 함은 창, 문면적의 50% 이상이 투과체로 구성된 문, 유리블럭, 플라스틱패널 등과 같이 투과재료로 구성되며, 외기에 접하여 채광이 가능한 부위를 말한다.
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 11항
Check(NFSC503A_6_11){
IF CS THEN KS
}
Pipe myPipe {
isObjectProperty(Pipe .usage) = "WaterSupplyPipe "
}
Valve myValve1{
isObjectProperty(Valve.isShutoffValve) = TRUE
}
S{
isInstalled(myValve1,myPipe ) = TRUE
isInstalled(myValve1,myPort) = FALSE
}
KS{
isObjectProperty(myValve1.isIndicatingValve) = TRUE
Valve myValve2{
isInstalled(Valve, Pump.Inlet) = TRUE
}
isObjectProperty(myValve2.isIndicatingValve) = TRUE
isObjectProperty(myValve2.isButterflyValve) = FALSE
}
Python Code 변환 예정
20
건축물의 에너지절약설계기준 제 5조 9호 너 목
너. "태양열취득률(SHGC)"이라 함은 입사된 태양열에 대하여 실내로 유입된 태양열취득의 비율을 말한다.
// 옥내소화전설비의 화재안전기준(nfsc 102) 6조 (배관 등) 13항 2호
Check(NFSC503A_6_13_2){
IF !CS THEN KS
}
CS{
isShared(HookingUpSprinklerSystem.Pipe , SprinklerSystem.Pipe , WaterSprayExtingushingSystem.Pipe , FoamExtinguishingSystem.Pipe ) = TRUE
OR isShared(HookingUpSprinklerSystem.Pipe , FireDepartmentConnectionSystem.Pipe ) = TRUE
}
KS{
Port myPort{
getObjectProperty(HookingUpSprinklerSystem.Port.typeForWater) = "FireDepartmentConnection"
}
Pipe myPipe {
isObjectProperty(Pipe .isRiser)=TRUE
}
Vavle myValve{
isObjectProperty(Valve.isShutoffValve)= TRUE
}
isConnectedTo(myPort, Pipe ) = TRUE
isConnectedTo(Pipe , myPipe ) = TRUE
isInstalled(myValve, myPipe ) = FALSE
}
Python Code 변환 예정
21
건축물의 에너지절약설계기준 제 5조 9호 타 목
타. "야간단열장치”라 함은 창의 야간 열손실을 방지할 목적으로 설치하는 단열셔터, 단열덧문으로서 총열관류저항(열관류율의 역수)이 0.4㎡·K/W 이상인 것을 말한다.
// 스프링클러설비의 화재안전기준(nfsc 103) 4조 (수원) 5항 1호
Check(NFSC103_4_5_1){
KS
}
Pump myPump{
isInstalled(Pump, SprinklerSystem) = TRUE
}
Valve myValve{
isObjectProperty(Valve.isFootValve) = TRUE
isInstalled(Valve, myPump) = TRUE
}
Valve myValve2{
isObjectProperty(Valve.isFootValve) = TRUE
Valve != myValve
}
Pipe myPipe {
isObjectProperty(Pipe .isObsorptionPipe ) = TRUE
}
Obsorption myObsorptionOpening{
isInstalled(ObsorptionOpening, myPipe ) = TRUE
}
Obsorption myObsorptionOpening2{
ObsorptionOpening != myObsorptionOpening
}
KS{
getObjectVerticalLocation(myValve, myValve2) < 0
OR getObjectVerticalLocation(myObsorptionOpening, myOpsorptionOpening2) < 0
}
Python Code 변환 예정
22
건축물의 에너지절약설계기준 제 5조 9호 파 목
파. "평균 열관류율”이라 함은 지붕(천창 등 투명 외피부위를 포함하지 않는다), 바닥, 외벽(창 및 문을 포함한다) 등의 열관류율 계산에 있어 세부 부위별로 열관류율값이 다를 경우 이를 면적으로 가중평균하여 나타낸 것을 말한다. 단, 평균열관류율은 중심선 치수를 기준으로 계산한다.
// 스프링클러설비의 화재안전기준(nfsc 103) 4조 (수원) 5항 2호
Check(NFSC103_4_5_2){
KS
}
Pipe myPipe {
isObjectProperty(Pipe .isRiser) = TRUE
isInstalled(Pipe , SprinklerSystem) = TRUE
}
Tank myTank{
getObjectProperty(Tank.operationType) = "ElevatedWaterTank"
}
WaterSupplyOpening myWaterSupplyOpening{
isConnectedTo(WaterSupplyOpening, myPipe ) = TRUE
}
WaterSupplyOpening myWaterSupplyOpening2{
WaterSupplyOpening != myWaterSupplyOpening
}
KS{
getObjectVerticalLocation(myWaterSupplyOpening, myWaterSupplyOpening2) < 0
}
Python Code 변환 예정
23
건축물의 에너지절약설계기준 제 6조 4호 라 4) 목
4) 너비 1.2미터 이하의 출입문
Check(NFCS103_10_7_3){
IF !CS THEN KS
}
objectDistance myObjectDistance1{
getObjectDistance(SprinklerHead,Obstacle,a)
}
objectDistance myObjectDistance2{
getObjectDistance(SprinklerHead,Ceiling,a)
}
CS{
getObjectWidth(Obstacle)<="myObjectDistance"
KS{
getObjectDistance(Pipe ,Ceiling,a)<"myObjectDistance"
OR getObjectDistance(Pipe ,Hanger,a)<"myObjectDistance"
OR getObjectDistance(Pipe ,LightingFixture,a)<"myObjectDistance"
}
Python Code 변환 예정
24
건축물의 에너지절약설계기준 제 6조 4호 바 목
바. 건축물의 거실의 창이 외기에 직접 면하는 부위인 경우에는 제5조제9호자목에 따른 기밀성 창을 설치하여야 한다.
//스프링클러설비의 화재안전기준(NFSC 103) 10조 (헤드) 7항5호
Check(NFSC103_10_7_5){
IF CS THEN KS
}
CS{
getObjectProperty(Ceiling.gradient)>1/10
}
KS{
isParallel(BranchPipe , Ceiling.Top)=TRUE
getResult(NFSC103_10_7_5_1)=TRUE
OR getResult(NFSC103_10_7_5_2)=TRUE
}
Python Code 변환 예정
25
건축물의 에너지절약설계기준 제 7조
제7조(건축부문의 권장사항) 에너지절약계획서 제출대상 건축물의 건축주와 설계자 등은 다음 각 호에서 정하는 사항을 제13조의 규정에 적합하도록 선택적으로 채택할 수 있다.
//스프링클러설비의 화재안전기준(NFSC 103) 10조 7항 7호
check(NFSC103_10_7_7){
IF !CS THEN KS
}
CS{
getResult(NFSC103_10_7_7_가)=TRUE
OR getResult(NFSC103_10_7_7_나)=TRUE
}
KS{
SprinklerHead mySprinklerHead{
SprinklerHead.installationDirectionType="BottomUpType"
}
SprinklerSystem mySprinklerSystem1{
SprinklerSystem.type = "VacuumSprinklerExtinguishingSystem"
}
SprinklerSystem mySprinklerSystem2{
SprinklerSystem.type = "WetPipe SprinklerSystem"
}
hasElement(mySprinklerSystem1, mySprinklerHead)=TRUE
hasElement(mySprinklerSystem2, mySprinklerHead)=TRUE
}
Python Code 변환 예정
26
건축물의 에너지절약설계기준 제 7조 2호 나 목
나. 건축물의 체적에 대한 외피면적의 비 또는 연면적에 대한 외피면적의 비는 가능한 작게 한다.
//스프링클러설비의 화재안전기준(nfsc 103) 11조 (송수구) 2호
Check(NFSC103_11_0_2){
IF CS THEN KS
}
CS{
Port myPort{
isObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
}
Pipe myPipe {
isObjectProperty(Pipe .isRiser)=TRUE
}
Valve myValve{
isObjectProperty(Valve.isShutoffValve)=TRUE
}
isConnectedTo(myPort,Pipe )=TRUE
isConnectedTo(Pipe ,myPipe )=TRUE
isInstalled(Pipe , myValve) = TRUE
}
KS{
Space mySpace{
isObjectProperty(Space.usage) = "MachineRoom"
}
isExternal(myValve)=TRUE
OR hasSpace(mySpace,myValve)=TRUE
Python Code 변환 예정
27
건축물의 에너지절약설계기준 제 7조 4호 가 목
가. 틈새바람에 의한 열손실을 방지하기 위하여 외기에 직접 또는 간접으로 면하는 거실 부위에는 기밀성 창 및 문을 사용한다.
// 스프링클러설비의 화재안전기준(nfsc 103) 15조 (헤드의 설치제외) 1항 1호
Check(NFSC103_15_1_1){
KS
}
KS{
getBuildingUsage() = "Stair.Space"
OR getSpaceUsage() = "Ramp"
OR getSpaceUsage() = "Elevator.ElevatorShaft"
OR getSpaceUsage() = "EmergencyElevatorPlatform"
OR getObjectProperty(Duct.isPipe Duct) = TRUE
OR getObjectProperty(Pit.isPipe Pit) = TRUE
OR getBuildingUsage() = "BathRoom"
OR getBuildingUsage() = "SwimmingPool"
OR getBuildingUsage() = "Toilet"
}
Python Code 변환 예정
28
건축물의 에너지절약설계기준 제 9조 2호 나 목
나. 난방기기, 냉방기기, 냉동기, 송풍기, 펌프 등은 부하조건에 따라 최고의 성능을 유지할 수 있도록 대수분할 또는 비례제어운전이 되도록 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 4조 (수원) 2항 2호
Check(NFSC503A_4_2_2){
KS
}
KS{
Pipe myPipe {
getObjectProperty(Pipe .usage)= "WaterSupplyPipe "
getObjectProperty(Pipe .systemType)="SimpleSprinklerSystem"
isObjectProperty(Pipe .isRiser)= TRUE
}
Tank myTank{
getObjectProperty(Tank.operationType) = "ElevatedWaterTank"
}
Port myPort1{
getObjectProperty(Port.typeForWater) = "Supply"
isConnectedTo(Port,myTank) = TRUE
isConnectedTo(Port,myWaterSupplyPipe ) = TRUE
}
Port myPort2 {
getObject(Port) - getObject(myPort1)
}
Distance1 = getObjectVerticalDistance(myPort1, Ground.Surface, b)
Distance2 = getObjectVerticalDistance(myPort2, Ground.Surface, b)
Distance1 - Distance2 < 0
}
Python Code 변환 예정
29
건축물의 에너지절약설계기준 제 9조 3호
3. 공조설비
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 4조 (수원) 4항 6호
Check(NFSC503A_4_2_6){
KS
}
KS{
Valve myValve{
isObjectProperty(Valve.isDeliveryValveForCleaning) = TRUE
}
Pipe myPipe {
isObjectProperty(Pipe .usage) = "WaterDrainPipe "
}
isInstalled(Tank.BottomSurface, myValve) = TRUE
OR isInstalled(Tank.BottomSurface, myPipe ) = TRUE
}
Python Code 변환 예정
30
건축물의 에너지절약설계기준 제 9조 4호 가 목
가. 난방 순환수 펌프는 운전효율을 증대시키기 위해 가능한 한 대수제어 또는 가변속제어방식을 채택하여 부하상태에 따라 최적 운전상태가 유지될 수 있도록 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치)2항 5호
Check(NFSC503A_5_2_5){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .isForTest) = TRUE
}
isInstalled(PressurizedWaterSupplySystem,myPipe ) = TRUE
}
Python Code 변환 예정
31
건축물의 에너지절약설계기준 제 9조 4호 나 목
나. 급수용 펌프 또는 급수가압펌프의 전동기에는 가변속제어방식 등 에너지절약적 제어방식을 채택한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치)2항 6호
Check(NFSC503A_5_2_6){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .isCirculationPipe ) = TRUE
}
isInstalled(PressurizedWaterSupplySystem,myPipe ) = TRUE
}
Python Code 변환 예정
32
건축물의 에너지절약설계기준 제 9조 6호 가 목
가. 위생설비 급탕용 저탕조의 설계온도는 55℃ 이하로 하고 필요한 경우에는 부스터히터 등으로 승온하여 사용한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치) 3항 1호
Check(NFSC503A_5_3_1){
KS
}
KS{
Tank myTank{
isObjectProperty(Tank.operationType) = "ElevatedWaterTank"
}
Head myHead{
hasSpace(TopFloor,Head) = TRUE
}
getObjectVerticalDistance(myTank.BottomSurface,myHead) >= Pipe .frictionHeadLossH + 10m
}
Python Code 변환 예정
33
건축물의 에너지절약설계기준 제 9조 6호 나 목
나. 에너지 사용설비는 에너지절약 및 에너지이용 효율의 향상을 위하여 컴퓨터에 의한 자동제어시스템 또는 네트워킹이 가능한 현장제어장치 등을 사용한 에너지제어시스템을 채택하거나, 분산제어 시스템으로서 각 설비별 에너지제어 시스템에 개방형 통신기술을 채택하여 설비별 제어 시스템간 에너지관리 데이터의 호환과 집중제어가 가능하도록 한다.
//간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치) 3항 2호
Check(NFSC503A_5_3_2){
KS
}
KS{
Tank myTank{
isObjectProperty(Tank.operationType) = "ElevatedWaterTank"
}
Pipe myPipe 1{
isObjectProperty(Pipe .isOverflowPipe ) = TRUE
}
Pipe myPipe 2{
getObjectProperty(Pipe .usage) = "WaterDrainPipe "
}
Pipe myPipe 3{
getObjectProperty(Pipe .usage) = "WaterSupplyPipe "
}
isInstalled(myTank,WaterLevelGauge) = TRUE
isInstalled(myTank,myPipe 2) = TRUE
isInstalled(myTank,myPipe 3) = TRUE
isInstalled(myTank,myPipe 1) = TRUE
isInstalled(myTank,Manshole) = TRUE
}
Python Code 변환 예정
34
건축물의 에너지절약설계기준 제 10조 1호
1. 수변전설비
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 5조 (가압송수장치) 4항 2호
Check(NFSC503A_5_4_2){
KS
}
KS{
Tank myTank{
isObjectProperty(Tank.operationType) = "HydropneumaticTank"
}
Pipe myPipe {
isObjectProperty(Pipe .usage)="WaterSupplyPipe "
OR isObjectProperty(Pipe .usage)="WaterDrainPipe "
OR isObjectProperty(Pipe .usage)="AirSupplyPipe "
}
AirCompressor myAirCompressor{
isObjectProperty(AirCompressor.isAutomatic) = TRUE
}
isInstalled(WaterLevelGauge, myTank) = TRUE
isInstalled(myPipe , myTank) = TRUE
isInstalled(Manshole, myTank) = TRUE
isInstalled(PressureGauge, myTank) = TRUE
isInstalled(SafetyDevice, myTank) = TRUE
isInstalled(AirCompressor, myTank) = TRUE
}
Python Code 변환 예정
35
건축물의 에너지절약설계기준 제 10조 3호 나 목
나. 안정기는 해당 형광램프 전용안정기를 사용하여야 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 6조 (간이스프링클러설비의 방호구역·유수검지장치)
Check(NFSC503A_6){
IF CS THEN KS
}
ParkingLot myParkingLot{
hasSpace(SpecificFireFightingBuilding, ParkingLot) = TRUE
}
CS{
isInstalled(SimpleSprinklerSystem, SpecificFireFightingBuilding) = TRUE
}
KS{
getObjectProperty(SprinklerSystem.type) != "WetPipe SprinklerSystem"
}
Python Code 변환 예정
36
건축물의 에너지절약설계기준 제 11조 1호 마 목
마. 역률개선용콘덴서를 집합 설치하는 경우에는 역률자동조절장치를 설치한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 3항 1호
Check(NFSC103A_8_3_1){
IF (CS1 THEN KS1) OR (CS2 THEN KS2)
}
Pipe myPipe {
getObjectProperty(Pipe .usage) = "WaterSupplyType"
isObjectProperty(myPipe .isDirectCoupledType) != TRUE
}
Pipe myPipe 2{
getObjectProperty(Pipe .usage) = "WaterSupplyType"
isObjectProperty(myPipe .isDirectCoupledType) = TRUE
}
CS1{
isExist(myPipe ) = TRUE
}
KS1{
isObjectProperty(myPipe .isShared) = FALSE
}
CS2{
isExist(myPipe 2) = TRUE
}
KS2{
isObjectProperty(myPipe .isShared) = FALSE
getObjectProperty(Pipe .diameter) >= 32mm
}
Python Code 변환 예정
37
건축물의 에너지절약설계기준 제 11조 1호 바 목
바. 건축물의 사용자가 합리적으로 전력을 절감할 수 있도록 층별 및 임대 구획별로 전력량계를 설치한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 3항 2호
Check(NFSC503A_8_3_2){
KS2 AND IF CS THEN KS1
}
KS2{
Valve myValve{
isObjectProperty(Valve.isShutoffValve)=TRUE
}
isObjectProperty(myValve.isIndicatingValve) = TRUE
}
CS{
Pipe myPipe {
isInstalled(Pipe , Pump.Inlet) = TRUE
}
isInstalled(myValve, myPipe ) = TRUE
}
KS1{
isObjectProperty(myValve.isIndicatingValve) = TRUE
isObjectProperty(myValve.isButterflyValve) = TRUE
}
Python Code 변환 예정
38
건축물의 에너지절약설계기준 제 11조 2호 가 목
가. 승강기 구동용전동기의 제어방식은 에너지절약적 제어방식으로 한다.
//간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 4항
Check(NFSC503A_8_4){
IF CS THEN KS
}
CS{
isInstalled(Pump.Inlet, Pipe ) = TRUE
}
KS{
getResult(NFSC503A_8_4_1) = TRUE
getResult(NFSC503A_8_4_2) = TRUE
}
Python Code 변환 예정
39
건축물의 에너지절약설계기준 제 11조 3호 가 목
가. 옥외등은 고효율 에너지기자재 인증제품 또는 산업통상자원부 고시 효율관리기자재 운용규정」에서 고효율조명기기로 등록된 고휘도방전램프(HID Lamp : High Intensity Dis charge Lamp) 또는 LED 램프를 사용하고, 옥외등의 조명회로는 격등 점등과 자동점멸기에 의한 점멸이 가능하도록 한다.
//간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 5항
Check(NFSC503A_8_5){
IF CS THEN KS
}
CS{
Pipe myPipe 1{
Pipe .systemType = "SimpleSprinklersystem"
}
Pipe myPipe 2{
Pipe .systemType = "FireDepartmentConnectionSystem"
}
Pipe .isShared(myPipe 1, myPipe 2) = TRUE
}
KS{
Pipe myPipe 3{
isObjectProperty(Pipe .isRiser) = TRUE
}
Port myPort{
getObjectProperty(Port.typeForWater) = "Delivery"
Pipe myPipe 4{
isConnectedTo(Pipe , myPort) = TRUE
}
isObjectProperty(myPipe 3.diameter) >= 100 mm
getObjectProperty(myPipe 4.diameter) >= 65 mm
}
Python Code 변환 예정
40
건축물의 에너지절약설계기준 제 11조 3호 마 목
마. KS A 3011에 의한 작업면 표준조도를 확보하고 효율적인 조명설계에 의한 전력에너지를 절약한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 7항
Check(NFSC503A_8_7){
KS
}
KS{
Valve myValve1{
isObjectProperty(Valve.isCheckValve) = TRUE
}
PP = isObjectProperty(Pump.shutoffPressure)
Valve myValve2{
isObjectProperty(Valve.isReliefValve) = TRUE
isObjectProperty(Valve.reliefPressure) < PP
}
isInstalledInOrder(myValve1, Pipe , Pump) = TRUE
isObjectProperty(Pipe .diameter) >= 20mm
isInstalled(myValve2, Pipe ) = TRUE
}
Python Code 변환 예정
41
건축물의 에너지절약설계기준 제 11조 4호 가 목
가. 여러 대의 승강기가 설치되는 경우에는 군관리 운행방식을 채택한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 9항 1호
Check(NFSC103A_8_9_1){
KS
}
KS{
isObjectProperty(Pipe .isBranchLines) = TRUE
isObjectProperty(Pipe .hasTournamentArragement) = FALSE
}
Python Code 변환 예정
42
건축물의 에너지절약설계기준 제 11조 4호 나 목
나. 팬코일유닛이 설치되는 경우에는 전원의 방위별, 실의 용도별 통합제어가 가능하도록 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 9항 2호
Check(NFSC503A_8_9_2){
IF !CS THEN KS
}
CS{
getResult(NFSC503A_8_9_2_가) = TRUE
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .isBranchLines) = TRUE
}
Head myHead{
isIntalled(SimpleSprinkler.Head, myPipe .One) = TRUE
getObjectVerticalLocation(CeilingCovering, SimpleSprinkler.Head) < 0
}
getObjectCount(myHead) <= 8
}
Python Code 변환 예정
43
건축물의 에너지절약설계기준 제 11조 4호 다 목
다. 수변전설비는 종합감시제어 및 기록이 가능한 자동제어설비를 채택한다.
9항 3호
Check(NFSC503A_8_9_3){
IF CS THEN KS
}
Pipe myPipe 1{
isObjectProperty(Pipe .isBranchLines) = TRUE
}
Pipe myPipe 2{
isObjectProperty(Pipe .isFlexibleTube) = TRUE
}
CS{
isInstalledInOrder(myPipe 1, myPipe 2, Head) = TRUE
}
KS{
getResult(NFSC503_10_3) = TRUE
}
Python Code 변환 예정
44
건축물의 에너지절약설계기준 제 11조 4호 라 목
라. 실내 조명설비는 군별 또는 회로별로 자동제어가 가능하도록 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 10항
Check(NFSC503A_8_10){
IF CS THEN KS
}
Pipe myPipe 1{
isObjectProperty(Pipe .isBranchLines) = TRUE
}
Head myHead{
isObjectProperty(Head.installationDirectionType) = "TopDownType"
}
CS{
isInstalled(myHead, myPipe 1) = TRUE
}
KS{
Pipe mypipe2{
isConnectedTo(myPipe 1, Pipe ) = TRUE
isConnectedTo(myHead, Pipe ) = TRUE
}
getObjectVerticalLocation(myPipe 1, myPipe 1) > 0
}
Python Code 변환 예정
45
건축물의 에너지절약설계기준 제 11조 5호
5. 사용하지 않는 기기에서 소비하는 대기전력을 저감하기 위해 도어폰, 홈게이트웨이 등은 대기전력저감 우수제품으로 등록된 제품을 사용한다.
11항 1호
Check(NFSC503A_8_11_1){
KS
}
KS{
Valve myValve{
isObjectProperty(Valve.isIndicatingValve) = TRUE
}
Pipe myPipe {
isObjectProperty(Pipe .isSecondaryPipe ) = TRUE
}
isInstalled(myValve, myPipe ) = TRUE
}
Python Code 변환 예정
46
건축물의 에너지절약설계기준 제 12조
제12조(신·재생에너지 설비부문의 의무사항) 에너지절약계획서 제출대상 건축물에 신·재생에너지설비를 설치하는 경우 「신에너지 및 재생에너지 개발·이용·보급 촉진법」에 따른 산업통상자원부 고시 「신·재생에너지 설비의 지원 등에 관한 규정」을 따라야 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 11항 2호
Check(NFSC503A_8_11_2){
IF CS THEN KS
}
CS{
Valve myValve{
isObjectProperty(Valve.isIndicatingValve) = TRUE
}
WaterflowIndicator myWaterflowIndicator{isObjectProperty(WaterflowIndicator.type) = "PreactionWaterflowIndicator"
}
isInstalledInOrder(myValve, Pipe , myWaterflowIndicator) = TRUE
}
KS{
getResult(NFSC503A_8_11_2_가) = TRUE
getResult(NFSC503A_8_11_2_나) = TRUE
}
Python Code 변환 예정
47
건축물의 에너지절약설계기준 제 13조
제13조(에너지절약계획서 및 설계 검토서 작성) 에너지절약 설계 검토서는 별지 제1호 서식에 따라 에너지절약설계기준 의무사항 및 에너지성능지표, 에너지소요량 평가서로 구분된다. 에너지절약계획서를 제출하는 자는 에너지절약계획서 및 설계 검토서(에너지절약설계기준 의무사항 및 에너지성능지표, 에너지소요량 평가서)의 판정자료를 제시(전자문서로 제출하는 경우를 포함한다)하여야 한다. 다만, 자료를 제시할 수 없는 경우에는 부득이 당해 건축사 및 설계에 협력하는
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 11항 2호 가목
Check(NFSC503A_8_11_2_가){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .usage) = "WaterDrainPipe "
isObjectProperty(Pipe .isRiser) = TRUE
}
Valve myValve{
isObjectProperty(Valve.isShutoffValve) = TRUE
}
isConnectedTo(Pipe , myPipe ) = TRUE
isInstalled(myValve, Pipe ) = TRUE
}
Python Code 변환 예정
48
건축물의 에너지절약설계기준 제 14조
제14조(에너지절약설계기준 의무사항의 판정) 에너지절약설계기준 의무사항은 전 항목 채택 시 적합한 것으로 본다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 11항 2호 나목
Check(NFSC503A_8_11_2_나){
KS
}
KS{
isInstalled(AutomaticDrainSystem, Pipe ) = TRUE
isInstalled(PressureSwitch, Pipe ) = TRUE
}
Python Code 변환 예정
49
건축물의 에너지절약설계기준 제 15조 2 항
② 에너지성능지표의 각 항목에 대한 배점의 판단은 에너지절약계획서 제출자가 제시한 설계도면 및 자료에 의하여 판정하며, 판정 자료가 제시되지 않을 경우에는 적용되지 않은 것으로 간주한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 12항 1호
Check(NFSC503A_8_12_1){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .isBranchLines) = TRUE
isFarthestDistance(WaterflowIndicator, Pipe ) = TRUE
}
isInstalled(TestingDevice, myPipe .End) = TRUE
isConnectedTo(TestingDevice, myPipe .End) = TRUE
}
Python Code 변환 예정
50
건축물의 에너지절약설계기준 제 16조
제16조(완화기준) 영 제11조에 따라 건축물에 적용할 수 있는 완화기준은 별표9에 따르며, 건축주가 건축기준의 완화적용을 신청하는 경우에 한해서 적용한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 12항 2호
Check(NFSC503A_8_12_2){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .isForTest) = TRUE
}
Head myHead{
isObjectProperty(Head.openAndCloseType) = "OpenType"
getObjectProperty(Head.systemType) = "SimpleSprinklerSystem"
}
BD = getObjectDiameter(NFSC503A_8_12_1.myPipe )
getObjectDiameter(myPipe , a) = BD
isInstalled(myHead, myPipe .End) = TRUE
}
Python Code 변환 예정
51
건축물의 에너지절약설계기준 제 17조 1 항
제17조(완화기준의 적용방법) ① 완화기준의 적용은 당해 용도구역 및 용도지역에 지방자치단체 조례에서 정한 최대 용적률의 제한기준, 조경면적 기준, 건축물 최대높이의 제한 기준에 대하여 다음 각 호의 방법에 따라 적용한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 12항 3호
Check(NFSC503A_8_12_3){
KS
}
KS{
Pipe myPipe 1{
isObjectProperty(Pipe .isForTest) = TRUE
}
Pipe myPipe 2{
isObjectProperty(Pipe .usage) = "WaterDrainPipe "
}
isInstalled(myPipe 2, myPipe 1.End) = TRUE
}
Python Code 변환 예정
52
건축물의 에너지절약설계기준 제 17조 1 항 1호
「법 및 조례에서 정하는 기준 용적률」× [1 + 완화기준]
// 간이스프링클러설비의 화재안전기준(NFSC 103A) 8조 (배관 및 밸브) 13조 1호
Check(NFSC103A_8_13_1){
IF(CS1 THEN KS1) OR (CS2 THEN KS2)
}
Pipe myPipe {
isObjectProperty(Pipe .isBranchLines) = TRUE
}
CS1{
getObjectInterval(SimpleSprinkler.Head) <= 3.5m
}
KS1{
getObjectCountInInterval(Hanger, SimpleSprinkler.Head) >= 1
isInstalled(Hanger, myPipe ) = TRUE
}
CS2{
getObjectInterval(SimpleSprinkler.Head) > 3.5m
}
KS2{
Head myHead{
isObjectProperty(Head.installationDirectionType) = "BottomUpType"
}
isInstalled(Hanger, myPipe , b, 3.5) = TRUE
getObjectCountInInterval(Hanger, SimpleSprinkler.Head) >= 1
getObjectDistance(myHead, Hanger) >= 8cm
}
Python Code 변환 예정
53
건축물의 에너지절약설계기준 제 17조 1 항 2호
2. 조경면적 적용방법
//간이스프링클러설비의 화재안전기준(NFSC 103A) 8조 (배관 및 밸브) 13조 2
Check(NFSC103A_8_13_2){
IF(CS1 THEN KS1) OR (CS2 THEN KS2)
}
Pipe myPipe 1{
isObjectProperty(Pipe .isCrossMains) = TRUE
}
Pipe myPipe 2{
isObjectProperty(Pipe .isBranchLines) = TRUE
}
CS1{
getObjectInterval(myPipe 2) <= 4.5m
}
KS1{
getObjectCountInInterval(Hanger, myPipe 2) >= 1
isInstalled(Hanger, myPipe 1) = TRUE
}
CS2{
getObjectInterval(myPipe 2) > 4.5m
}
KS2{
isInstalled(Hanger, myPipe 1, b, 4.5) = TRUE
getObjectCountInInterval(Hanger, myPipe 2) >= 1
}
Python Code 변환 예정
54
건축물의 에너지절약설계기준 제 17조 1 항 2호
「법 및 조례에서 정하는 기준 조경면적」× [1 - 완화기준]
//간이스프링클러설비의 화재안전기준(NFSC 103A) 8조 (배관 및 밸브) 13조 3호
Check(NFSC103A_8_13_3){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .isFeedMains) = TRUE
}
isInstalled(Hanger, myPipe , b, 4.5) = TRUE
getObjectCountInInterval(Hanger, myPipe ) >= 1
}
Python Code 변환 예정
55
건축물의 에너지절약설계기준 제 17조 1 항 3호
「법 및 조례에서 정하는 건축물의 최고높이」× [1 + 완화기준]
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 15항 1호
Check(NFSC503A_8_15_1){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .usage) = "WaterDrainPipe "
}
isParallel(FloorSlab, myPipe ) = TRUE
}
Python Code 변환 예정
56
건축물의 에너지절약설계기준 제 18조 3 항
③ 신청인의 자격은 건축주 또는 사업주체로 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 16항 1호 나목
Check(NFSC503A_8_16_1_나){
KS
}
KS{
ShutdownEquipment myShutdownEquipment{
isObjectProperty(ShutdownEquipment.type) = "Water"
}
Pipe myPipe {
isObjectProperty(Pipe .systemType) != "SimpleSprinklerSystem"
}
isInstalled(myShutdownEquipment, myPipe ) = TRUE
}
Python Code 변환 예정
57
건축물의 에너지절약설계기준 제 18조 4 항
④ 완화기준의 신청을 받은 허가권자는 신청내용의 적합성을 검토하고, 신청자가 신청내용을 이행하도록 허가조건에 명시하여 허가하여야 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 16항 2호
Check(NFSC503A_8_16_2){
IF (!CS1 AND CS2) THEN KS
}
CS1{
getObjectVerticalLocation(WaterSource, Pump) > 0
}
CS2{
PressurizedWaterSupplySystem myPressurizedWaterSupplySystem{
isObjectProperty(PressurizedWaterSupplySystem.supplyType) != "DirectCoupledType" OR "PressurizedTankType"
}
isInstalled(Pipe , myPressurizedWaterSupplySystem) = TRUE
OR isInstalled(Valve, myPressurizedWaterSupplySystem) = TRUE
}
KS{
Tank myTank{
isObjectProperty(Tank.operationType) = "HydropneumaticTank"
}
Valve myValve1{
isObjectProperty(Valve.isCheckValve) = TRUE
}
Valve myValve2{
isObjectProperty(Valve.isIndicatingValve) = TRUE
}
Valve myValve3{
isObjectProperty(Valve.isTestValve) = TRUE
}
Pipe myPipe {
isObjectProperty(Pipe .isForTest) = TRUE
}
isInstalledInOrder(WaterSource, CompoundGauge | VacuumGauge, Pump | myTank, PressureGauge, myValve1, myPipe , myValve2, WaterflowIndicator, myValve3) = TRUE
}
Python Code 변환 예정
58
건축물의 에너지절약설계기준 제 19조 1 항
제19조(인증의 취득) ① 신청인이 인증에 의해 완화기준을 적용받고자 하는 경우에는 인증기관으로부터 예비인증을 받아야 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 16항 3호
Check(NFSC503A_8_16_3){
IF CS THEN KS
}
CS{
PressurizedWaterSupplySystem myPressurizedWaterSupplySystem{
isObjectProperty(PressurizedWaterSupplySystem.supplyType) = "PressurizedTankType"
}
isInstalled(Pipe , myPressurizedWaterSupplySystem) = TRUE
OR isInstalled(Valve, myPressurizedWaterSupplySystem) = TRUE
}
KS{
Tank myTank{
isObjectProperty(Tank.operationType) = "PressurizedTank"
}
Valve myValve1{
isObjectProperty(Valve.isCheckValve) = TRUE
}
Valve myValve2{
isObjectProperty(Valve.isIndicatingValve) = TRUE
}
Valve myValve3{
isObjectProperty(Valve.isTestValve) = TRUE
getObjectCount(Valve) = 2
}
Pipe myPipe {
isObjectProperty(Pipe .isForTest) = TRUE
}
isInstalledInOrder(WaterSource, myTank, PressureGauge, myValve1, myPipe , myValve2, WaterflowIndicator, myValve3) = TRUE
}
Python Code 변환 예정
59
건축물의 에너지절약설계기준 제 19조 2 항
② 완화기준을 적용받은 건축주 또는 사업주체는 건축물의 사용승인 신청 이전에 본인증을 취득하여 사용승인 신청 시 허가권자에게 인증서 사본을 제출하여야 한다. 단, 본인증의 등급은 예비인증 등급 이상으로 취득하여야 한다.
// 간이스프링클러설비의 화재안전기준(nfsc 103a) 8조 (배관 및 밸브) 16항 4호
Check(NFSC503A_8_16_4){
IF (!CS1 AND CS2) THEN KS
}
CS1{
getObjectVerticalLocation(WaterSource, Pump) > 0
}
CS2{
SimpleSprinklerSystem mySimpleSprinklerSystem{
isObjectProperty(SimpleSprinklerSystem.isCabinetType) = TRUE
}
isInstalled(Pipe , mySimpleSprinklerSystem.PressurizedWaterSupplySystem) = TRUE
OR isInstalled(Valve, mySimpleSprinklerSystem.PressurizedWaterSupplySystem) = TRUE
}
KS{
Tank myTank{
isObjectProperty(Tank.operationType) = "HydropneumaticTank"
}
Valve myValve1{
isObjectProperty(Valve.isCheckValve) = TRUE
}
Valve myValve2{
isObjectProperty(Valve.isIndicatingValve) = TRUE
}
Valve myValve3{
isObjectProperty(Valve.isTestValve) = TRUE
getObjectCount(Valve) = 2
}
isInstalledInOrder(WaterSource, CompoundGauge | VacuumGauge, Pump | myTank, PressureGauge, myValve1, myPipe , myValve2, myValve3) = TRUE
}
Python Code 변환 예정
60
건축물의 에너지절약설계기준 제 23조 4 항
④ 기숙사, 오피스텔은 별표1 및 별표3의 공동주택 외의 단열기준을 준수할 수 있으며, 별지 제1호서식의 에너지성능지표 작성 시, 기본배점에서 비주거를 적용한다.
// 간이스프링클러설비의 화재안전기준(NFSC 103A) 별표1 (간이헤드 수별 급수관의 구경) 1항
Check(NFSC103A_*_1){
getResult(NFSC103A_*_1_1) = TRUE
getResult(NFSC103A_*_1_2) = TRUE
getResult(NFSC103A_*_1_3) = TRUE
getResult(NFSC103A_*_1_4) = TRUE
}
Pipe myPipe {
getObjectProperty(Pipe .usage) = "WaterSupplyPipe "
}
Pipe myPipe 2{
isObjectProperty(Pipe .isBranchLines) = TRUE
}
PD = getObjectProperty(Pipe .diameter)
SSHN = getObjectCount(SimpleSprinkler.Head.)
Check(NFSC103A_*_1_2){
IF CS THEN KS
}
CS{
Head myHead{
getObjectProperty(SimpleSprinkler.Head.openAndCloseType) = "EnclosedType"
}
isInstalled(myHead) = TRUE
}
KS{
IF PD = 25 THEN SSHN = 2
OR IF PD = 32 THEN SSHN = 3
OR IF PD = 40 THEN SSHN = 5
OR IF PD = 50 THEN SSHN = 10
OR IF PD = 65 THEN SSHN = 30
OR IF PD = 80 THEN SSHN = 60
OR IF PD = 100 THEN SSHN = 100
OR IF PD = 125 THEN SSHN = 160
OR IF PD = 150 THEN SSHN >= 161
}
Check(NFSC103A_*_1_3){
IF CS THEN KS
}
CS{
Head myHead1{
getObjectProperty(SimpleSprinkler.Head.openAndCloseType) = "EnclosedType"
}
isInstalled(myHead1) = TRUE
Head myHead2{
getObjectVerticalLocation(Head, CeilingCovering, ) < 0
}
Head myHead3{
isInstalled(Head, CeilingCovering.Inside) = TRUE
}
isInstalled(myHead2, myPipe 2) = TRUE
isInstalled(myHead3, myPipe 2) = TRUE
}
KS{
IF PD = 25 THEN SSHN = 2
OR IF PD = 32 THEN SSHN = 4
OR IF PD = 40 THEN SSHN = 7
OR IF PD = 50 THEN SSHN = 15
OR IF PD = 65 THEN SSHN = 30
OR IF PD = 80 THEN SSHN = 60
OR IF PD = 100 THEN SSHN = 100
OR IF PD = 125 THEN SSHN = 160
OR IF PD = 150 THEN SSHN >= 161
}
Python Code 변환 예정
61
건축물의 에너지절약설계기준 제 28조 1 항 2호
2. 제로에너지빌딩 인정 등 인센티브 지원에 관한 업무
// 자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 2항 2호
Check(NFSC203_7_2_3){
IF CS THEN KS
}
CS{
Pipe myPipe {
isObjectProperty(Pit.isPipe Pit) = TRUE
}
Space mySace{
getSpaceUsage(Space) = "ElevatorTractionMachineRoom"
OR isInstalled(LinenChute,Space) = TRUE
OR isInstalled(myPipe ,Space) = TRUE
OR isInstalled(Duct,Space) = TRUE
}
}
KS{
isInstalled(SmokeSensor,mySpace) = TRUE
}
Python Code 변환 예정
62
건축물의 에너지절약설계기준 제 별표2조
단열재의 등급 분류
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 7호 가목
Check(NFSC203_7_3_7_가){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .isForAir) = TRUE
}
Zone myZone{
isObjectProperty(Zone.isDetectionZone) = TRUE
}
hasObject(myZone, myPipe ) = TRUE
getObjectLength(myZone.One.myPipe ) >= 20m
}
Python Code 변환 예정
63
건축물의 에너지절약설계기준 제 별표3조
단열재의 두께
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 7호 가목
Check(NFSC203_7_3_7_가){
KS3 AND IF !CS THEN KS1 ELSE KS2
}
Pipe myPipe {
isObjectProperty(Pipe .isForAir) = TRUE
}
Zone myZone{
isObjectProperty(Zone.isDetectionZone) = TRUE
}
KS3{
getElementDistance(myPipe , myZone.Wall) <= 1.5m
getElementDistance(myPipe , myZone.Column) <= 1.5m
}
CS{
isFireResistantStructure(SpecificFireFightingBuilding.MainStructuralPart) = TRUE
}
KS1{
getObjectInterval(myPipe ) <= 6m
}
KS2{
getObjectInterval(myPipe ) <= 6m
}
Python Code 변환 예정
64
건축물의 에너지절약설계기준 제 별표4조
창 및 문의 단열성능
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 7호 다목
Check(NFSC203_7_3_7_다){
KS
}
Pipe myPipe {
isObjectProperty(Pipe .isForAir) = TRUE
}
isObjectProperty(myPipe .isDiverged) = FALSE
Python Code 변환 예정
65
건축물의 에너지절약설계기준 제 별표5조
열관류율 계산 시 적용되는 실내 및 실외측 표면 열전달저항
자동화재탐지설비의 화재안전기준(nfsc 203) 7조 (감지기) 3항 7호 라목
Check(NFSC203_7_3_7_라){
KS
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .isForAir) = TRUE
}
isConnectedTo(myPipe , DetectingElement.One) = TRUE
getObjectLength(myPipe ) <= 100m
}
Python Code 변환 예정
66
건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 제 25조 1 항 1호
1. 거실의 바닥면적이 50제곱미터 이상인 층에는 직통계단외에 피난층 또는 지상으로 통하는 비상탈출구 및 환기통을 설치할 것. 다만, 직통계단이 2개소 이상 설치되어 있는 경우에는 그러하지 아니하다.
//건축물의 피난ㆍ방화구조 등의 기준에 관한 규칙 25조 (지하층의 구조) 1항 1호
check(REFB_25_1_1){
IF !(CS) THEN KS
}
KS{
Floor myFloor1{
hasSpace(Floor,Room) = TRUE
getTotalArea(Room) >= 50 m2
}
Floor myFloor2{
isObjectProperty(Floor.isEscape) = TRUE
}
Door myDoor{
isObjectProperty(Door.functionType) = "Emergency"
(isDirectlyAccessible(Door, myFloor2) = TRUE
OR isDirectlyAccessible(Door, Ground) = TRUE)
}
hasSpace(myFloor1, myDoor)
OR (hasSpace(myFloor1, VentilatorPipe ) = TRUE
(isDirectlyAccessible(VentilatorPipe , myFloor2) = TRUE
OR isDirectlyAccessible(VentilatorPipe , Ground) = TRUE))
}
CS{
Floor myFloor1{
hasSpace(Floor,Room) = TRUE
getTotalArea(Room) >= 50 m2
}
Stair myStair{
isObjectProperty(Stair.isDirect) = TRUE
hasSpace(myFloor1, Stair) = TRUE
}
getObjectCount(myStair) >= 2
}
Python Code 변환 예정
67
소화기구 및 자동소화장치의 화재안전기준(NFSC 101) 제 4조 7호 다 목
다. 가스차단장치는 주방배관의 개폐밸브로부터 2m 이하의 위치에 설치하되, 상시 확인 및 점검이 가능하도록 설치할 것<개정 2012.6.11>
//소화기구 및 자동 소화장치의 화재안전기준(nfsc 101) 4조 (설치기준) 1항 7호 다목
Check(NFSC101_4_1_7_다){
KS
}
KS{
ShutdownEquipment myShutdownEquipment{
isObjectProperty(ShutdownEquipment.type)="GAS"
}
Space mySpace{
isObjectProperty(Space.usage) = "Kitchen"
}
Pipe myPipe {
isInstalled(Pipe , mySpace) = TRUE
}
Valve myValve{
isObjectProperty(Valve.isShutoffValve) = TRUE
isInstalled(Valve, myPipe ) = TRUE
}
isElementDistance(myShutdownEquipment, myValve) <= 2m
}
Python Code 변환 예정
68
스프링클러설비의 화재안전기준(NFSC 103) 제 10조 7 항 5호 나 목
나. 천장의 최상부를 중심으로 가지관을 서로 마주보게 설치하는 경우에는 최상부의 가지관 상호간의 거리가 가지관상의 스프링클러헤드 상호간의 거리의 2분의 1이하(최소 1m 이상이 되어야 한다)가 되게 스프링클러헤드를 설치하고, 가지관의 최상부에 설치하는 스프링클러헤드는 천장의 최상부로부터의 수직거리가 90㎝ 이하가 되도록 할 것. 톱날지붕, 둥근지붕 기타 이와 유사한 지붕의 경우에도 이에 준한다.
//스프링클러설비의 화재안전기준(NFSC 103) 10조 (헤드) 7항5호 나목
Check(NFSC103_10_7_5_2){
IF CS THEN KS
}
CS{
isInstalled(Celling,BranchPipe ,b)=TRUE
}
KS{
BD=getElementDistance(BranchPipe , c)
SD=getElementDistance(SprinklerHead, c)
SD/BD>=2
BD>=1 m
IF isInstalled(BranchPipe , SprinklerHead, a )=TRUE
THEN getVerticalDistance(SprinklerHead,Ceiling.UppermostPart)<=90 cm
END IF
}
Python Code 변환 예정
69
스프링클러설비의 화재안전기준(NFSC 103) 제 10조 7 항 7호 가 목
가. 드라이펜던트스프링클러헤드를 사용하는 경우
//스프링클러설비의 화재안전기준(NFSC 103) 10조 7항 7호 가목
check(NFSC103_10_7_7_가){
KS
}
KS{
SprinklerHead mySprinklerHead{
isObjectProperty(SprinklerHead.isDryPendent)=TRUE
}
SprinklerSystem mySprinklerSystem{
getObject(WetPipe SprinklerSystem)
getObject(VacuumSprinklerExtinguishingSystem)
}
SprinklerSystem mySprinklerSystem1{
getObject(SprinklerSystem)!= mySprinklerSystem
}
hasElement(mySprinklerSystem1, mySprinklerHead)=TRUE
}
Python Code 변환 예정
70
스프링클러설비의 화재안전기준(NFSC 103) 제 10조 7 항 7호 다 목
다. 개방형스프링클러헤드를 사용하는 경우
//스프링클러설비의 화재안전기준(NFSC 103) 10조 7항 7호 다목
check(NFSC103_10_7_7_다){
KS
}
KS{
SprinklerHead mySprinklerHead{
isObjectProperty(SprinklerHead.openAndCloseType)="OpenType"
}
SprinklerSystem mySprinklerSystem{
getObject(WetPipe SprinklerSystem)
getObject(VacuumSprinklerExtinguishingSystem)
}
SprinklerSystem mySprinklerSystem1{
getObject(SprinklerSystem)!= mySprinklerSystem
}
hasElement(mySprinklerSystem1, mySprinklerHead)=TRUE
}
Python Code 변환 예정
71
연결살수설비의 화재안전기준(NFSC 503) 제 4조 1 항 5호
5. 송수구로부터 주배관에 이르는 연결배관에는 개폐밸브를 설치하지 아니 할 것. 다만, 스프링클러설비·물분무소화설비·포소화설비 또는 연결송수관설비의 배관과 겸용하는 경우에는 그러하지 아니하다.
// 연결살수설비의 화재안전기준(nfsc 503) 4조 (송수구 등) 1항 5호
Check(NFSC503_4_1_5){
IF !CS THEN KS
}
CS{
Pipe myPipe 1{
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
}
Pipe myPipe 2{
getObjectProperty(Port.systemType) = "SprinklerSystem"
}
Pipe myPipe 3{
getObjectProperty(Port.systemType) = "WaterSprayExtingushingSystem"
}
Pipe myPipe 4{
getObjectProperty(Port.systemType) = "FoamExtinguishingSystem"
}
Pipe myPipe 5{
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
}
Pipe myPipe 6{
getObjectProperty(Port.systemType) = "FireDepartmentConnectionSystem"
}
isShared(myPipe 1, myPipe 2, myPipe 3, myPipe 4) = TRUE
OR isShared(myPipe 5, myPipe 6) = TRUE
}
KS{
Port myPort{
getObjectProperty(Port.systemType) = "HookingUpSprinklerSystem"
getObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
}
Pipe myPipe {
isObjectProperty(Pipe .isRiser)=TRUE
}
Vavle myValve{
isObjectProperty(Valve.isShutoffValve)= TRUE
}
isConnectedTo(myPort, Pipe ) = TRUE
isConnectedTo(Pipe , myPipe ) = TRUE
isInstalled(myValve, myPipe ) = FALSE
}
Python Code 변환 예정
72
연결살수설비의 화재안전기준(NFSC 503) 제 5조 1 항
제5조(배관 등) ①배관은 배관용탄소강관(KS D 3507) 또는 압력배관용탄소강관(KS D 3562)이나 이와 동등 이상의 강도·내식성 및 내열성을 가진 것으로 하여야 한다. 다만, 다음 각 호의 어느 하나에 해당하는 장소에는 법 제39조에 따라 제품검사에 합격한 소방용 합성수지배관으로 설치할 수 있다. <개정 2012.8.20>
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 1항
Check(NFSC503_5_1){
IF !CS THEN KS
}
CS{
getResult(NFSC503_5_1_2) = TRUE
getResult(NFSC503_5_1_3) = TRUE
}
KS{
getObjectProperty(Pipe .Material) = "KS D 3507"
OR getObjectProperty(Pipe .Material) = "KS D 3562"
}
Python Code 변환 예정
73
연결살수설비의 화재안전기준(NFSC 503) 제 5조 1 항 2호
2. 다른 부분과 내화구조로 구획된 덕트 또는 피트의 내부에 설치하는 경우
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 1항 2호
Check(NFSC503_5_1_2){
KS
}
KS{
Duct myDcut{
isFireResistantStructure(Duct) = TRUE
}
isInstalled(Pipe , Duct) = TRUE
OR isInstalled(Pipe , Pit.Inside) = TRUE
}
Python Code 변환 예정
74
연결살수설비의 화재안전기준(NFSC 503) 제 5조 1 항 3호
3. 천장(상층이 있는 경우에는 상층바닥의 하단을 포함한다. 이하 같다)과 반자를 불연재료 또는 준불연재료로 설치하고 그 내부에 습식으로 배관을 설치하는 경우
//연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 1항 3호
Check(NFSC503_5_1_3){
KS
}
KS{
(isObjectProperty(Ceiling.Material.nonCombustibility)=TRUE
OR isObjectProperty(Ceiling.Material.quasiNonCombustibility)=TRUE)
(isObjectProperty(CeilingCovering.Material.nonCombustibility)=TRUE
OR isObjectProperty(CeilingCovering.Material.quasiNonCombustibility)=TRUE)
SprinklerSystem mySprinklerSystem{
SprinklerSystem.type = "WetPipe SprinklerSystem"
}
isInstalled(mySprinklerSystem, Ceiling)=TRUE
isInstalled(mySprinklerSystem, CeilingCovering)=TRUE
}
Python Code 변환 예정
75
연결살수설비의 화재안전기준(NFSC 503) 제 5조 2 항 1호
1. 연결살수설비 전용헤드를 사용하는 경우에는 다음 표에 따른 구경 이상으로 할 것
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 2항 1호
Check(NFSC503_5_2_1){
IF CS THEN KS
}
CS{
getObjectProperty(Head.systemType) = "HookingUpSprinklerSystem"
isObjectProperty(Head.isShared) = FALSE
}
KS{
Head myHead{
isInstalled(Head., Pipe .One) = TRUE
}
NH = getObjectCount(myHead)
IF NH = 1 THEN getObjectDiameter(Pipe ) >= 32mm
ELSE IF NH = 2 THEN getObjectDiameter(Pipe ) >= 40mm
ELSE IF NH = 3 THEN getObjectDiameter(Pipe ) >= 50mm
ELSE IF NH = 4 OR NH = 5 THEN getObjectDiameter(Pipe ) >= 65mm
ELSE IF NH >= 6 AND HN <= 10 THEN getObjectDiameter(Pipe ) >= 80mm
}
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 2항 2호
Check(NFSC503_5_2_2){
IF CS THEN KS
}
CS{
isObjectProperty(SprinklerSystem.Head.systemType) = "HookingUpSprinklerSystem"
}
KS{
getResult(NFSC103_*_1) = TRUE
}
Python Code 변환 예정Python Code 변환 예정
76
연결살수설비의 화재안전기준(NFSC 503) 제 5조 2 항 2호
2. 스프링클러헤드를 사용하는 경우에는 「스프링클러설비의 화재안전기준(NFSC 103)」 별표 1의 기준에 따를 것
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 2항 1호
Check(NFSC503_5_2_1){
IF CS THEN KS
}
CS{
getObjectProperty(Head.systemType) = "HookingUpSprinklerSystem"
isObjectProperty(Head.isShared) = FALSE
}
KS{
Head myHead{
isInstalled(HookingUpSprinklerSystem.Head., Pipe .One) = TRUE
}
NH = getObjectCount(myHead)
IF NH = 1 THEN getObjectDiameter(Pipe ) >= 32mm
ELSE IF NH = 2 THEN getObjectDiameter(Pipe ) >= 40mm
ELSE IF NH = 3 THEN getObjectDiameter(Pipe ) >= 50mm
ELSE IF NH = 4 OR NH = 5 THEN getObjectDiameter(Pipe ) >= 65mm
ELSE IF NH >= 6 AND HN <= 10 THEN getObjectDiameter(Pipe ) >= 80mm
}
Python Code 변환 예정
77
연결살수설비의 화재안전기준(NFSC 503) 제 5조 3 항
③폐쇄형헤드를 사용하는 연결살수설비의 주배관은 옥내소화전설비의 주배관(옥내소화전설비가 설치된 경우에 한한다) 및 수도배관(연결살수설비가 설치된 건축물 안에 설치된 수도배관 중 구경이 가장 큰 배관을 말한다) 또는 옥상에 설치된 수조(다른 설비의 수조를 포함한다)에 접속하여야 한다. 이 경우 연결살수설비의 주배관과 옥내소화전설비의 주배관·수도배관·옥상에 설치된 수조의 접속부분에는 체크밸브를 설치하되, 점검하기 쉽게 하여야 한다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 3항
Check(NFSC503_5_3){
IF CS THEN KS
}
Head myHead{
isObjectProperty(Head.openAndCloseType) = "EnclosedType"
}
Pipe myPipe 1{
isObjectProperty(Pipe .isRiser) = TRUE
isObjectProperty(myPipe .systemType) = "HookingUpSprinklerSystem"
}
CS{
isInstalled(myHead, myPipe 1) = TRUE
}
KS{
Pipe myPipe 2{
isObjectProperty(Pipe .isRiser) = TRUE
isObjectProperty(myPipe .systemType) = "IndoorFireHydrantSystem"
}
Tank myTank{
isInstalled(Tank, Rooftop) = TRUE
}
Pipe myPipe 3{
Pipe .isForWater = TRUE
연결살수설비가 설치된 건축물 안에 설치된 수도배관 중 구경이 가장 큰 배관
}
Valve myValve{
isObjectProperty(Valve.isCheckValve) = TRUE
}
(isConnectedTo(myPipe 1, myPipe 2) = TRUE
isInstalled(myValve, myPipe 1) = TRUE
isInstalled(myValve, myPipe 2) = TRUE)
OR (isConnectedTo(myPipe 1, myPipe 3) = TRUE
isInstalled(myValve, myPipe 1) = TRUE
isInstalled(myValve, myPipe 3) = TRUE)
OR (isConnectedTo(myPipe 1, myTank) = TRUE
isInstalled(myValve, myPipe 1) = TRUE
isInstalled(myValve, myTank) = TRUE)
}
Python Code 변환 예정
78
연결살수설비의 화재안전기준(NFSC 503) 제 5조 4 항
④폐쇄형헤드를 사용하는 연결살수설비에는 다음 각 호의 기준에 따른 시험배관을 설치하여야 한다. <개정 2012.8.20>
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 4항
Check(NFSC503_5_4){
IF CS THEN KS
}
CS{
Head myHead{
isObjectProperty(Head.openAndCloseType) = "EnclosedType"
}
isObjectProperty(myHead.systemType) = "HookingUpSprinklerSystem"
}
KS{
isInstalled(myPipe ) = TRUE
getResult(NFSC503_5_4_1) = TRUE
getResult(NFSC503_5_4_2) = TRUE
}
Python Code 변환 예정
79
연결살수설비의 화재안전기준(NFSC 503) 제 5조 4 항 1호
1. 송수구의 가장 먼 가지배관의 끝으로부터 연결하여 설치할 것
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 4항
Check(NFSC503_5_4_1){
KS
}
KS{
Pipe myPipe 1{
isObjectProperty(Pipe .isForTest) = TRUE
}
Port myPort{
getObjectProperty(Port.typeForWater) = "FireDepartmentConnection"
}
Pipe myPipe 2{
isObjectProperty(Pipe .isBranchLines) = TRUE
isFarthestDistance(myPort, Pipe ) = TRUE
}
isConnectedTo(myPipe 1, myPipe 2) = TRUE
}
Python Code 변환 예정
80
연결살수설비의 화재안전기준(NFSC 503) 제 5조 4 항 2호
2. 시험장치 배관의 구경은 가장 먼 가지배관의 구경과 동일한 구경으로 하고, 그 끝에는 물받이 통 및 배수관을 설치하여 시험 중 방사된 물이 바닥으로 흘러내리지 아니하도록 할 것. 다만, 목욕실·화장실 또는 그 밖의 배수처리가 쉬운 장소의 경우에는 물받이 통 또는 배수관을 설치하지 아니할 수 있다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 4항 2호
Check(NFSC503_5_4_2){
KS
}
KS{
Pipe myPipe 1{
isObjectProperty(Pipe .isForTest) = TRUE
}
Pipe myPipe 2{
isObjectProperty(Pipe .isBranchLines) = TRUE
isFarthestDistance(myPipe 1, Pipe ) = TRUE
}
DP = getObjectDiameter(myPipe 1)
getObjectDiameter(myPipe 2) = DP
}
Python Code 변환 예정
81
연결살수설비의 화재안전기준(NFSC 503) 제 5조 5 항
⑤개방형헤드를 사용하는 연결살수설비의 수평주행배관은 헤드를 향하여 상향으로 100분의 1 이상의 기울기로 설치하고 주배관중 낮은 부분에는 자동배수밸브를 제4조제3항제3호의 기준에 따라 설치하여야 한다. <개정 2012.8.20>
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 5항
Check(NFSC503_5_5){
IF CS THEN KS
}
CS{
Head myHead{
isObjectProperty(Head.openAndCloseType) = "OpenType"
}
isInstalled(myHead, HookingUpSprinklerSystem) = TRUE
}
KS{
Pipe myPipe {
isObjectProperty(Pipe .isFeedMains) = TRUE
getObjectProperty(Pipe .systemType) = "HookingUpSprinklerSystem"
}
두 객체의 기울기(myPipe , Head) >= 1/100
}
Python Code 변환 예정
82
연결살수설비의 화재안전기준(NFSC 503) 제 5조 6 항
⑥가지배관 또는 교차배관을 설치하는 경우에는 가지배관의 배열은 토너멘트방식이 아니어야 하며, 가지배관은 교차배관 또는 주배관에서 분기되는 지점을 기점으로 한 쪽 가지배관에 설치되는 헤드의 개수는 8개 이하로 하여야 한다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 6항
Check(NFSC503_5_6){
IF CS THEN KS
}
Pipe myPipe 1{
isObjectProperty(Pipe .isBranchLines) = TRUE
}
Pipe myPipe 2{
isObjectProperty(Pipe .isCrossMains) = TRUE
}
Pipe myPipe 3{
isObjectProperty(Pipe .isRiser) = TRUE
}
CS{
isInstalled(myPipe 1) = TRUE
OR isInstalled(myPipe 2) = TRUE
}
KS{
Head myHead{
isInstalled(Head, myPipe 1.DivergedSide.One) = TRUE
}
isObjectProperty(myPipe 1.tournamentArrangement) = FALSE
getObjectCount(myHead) <= 8
}
Python Code 변환 예정
83
연결살수설비의 화재안전기준(NFSC 503) 제 5조 8 항
⑧급수배관에 설치되어 급수를 차단할 수 있는 개폐밸브는 개폐표시형으로 하여야 한다. 이 경우 펌프의 흡입측배관에는 버터플라이밸브(볼형식의 것을 제외한다)외의 개폐표시형밸브를 설치하여야 한다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 8항
Check(NFSC503_5_6){
IF CS THEN KS
}
Pipe myPipe {
isObjectProperty(Pipe .usage) = "WaterSupplyPipe "
}
Valve myValve1{
isObjectProperty(Valve.isShutoffValve) = TRUE
}
CS{
isInstalled(myValve1,myPipe ) = TRUE
}
KS{
isObjectProperty(myValve1.isIndicatingValve) = TRUE
Valve myValve2{
isInstalled(Valve, Pump.Inlet) = TRUE
}
isObjectProperty(myValve2.isIndicatingValve) = TRUE
isObjectProperty(myValve2.isButterflyValve) = FALSE
}
Python Code 변환 예정
84
연결살수설비의 화재안전기준(NFSC 503) 제 5조 9 항
⑨연결살수설비 교차배관의 위치·청소구 및 가지배관의 헤드설치는 다음 각 호의 기준에 따른다. <개정 2012.8.20>
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 9항
Check(NFSC503_5_9){
IF CS THEN KS
}
CS{
Pipe myPipe 1{
isObjectProperty(Pipe .isCrossMains) = TRUE
isObjectProperty(Pipe .systemType) = "HookingUpSprinklerSystem")
}
Pipe myPipe 2{
isObjectProperty(Pipe .isBranchLines) = TRUE
isObjectProperty(Pipe .systemType) = "HookingUpSprinklerSystem")
}
CleanOut myCleanOut{
isObjectProperty(CleanOut.systemType) = "HookingUpSprinklerSystem")
}
isInstalled(myPipe 1) = TRUE
OR isInstalled(myPipe 2.Head) = TRUE
OR (isInstalled(myCleanOut) = TRUE
}
KS{
getResult(NFSC503_5_9_1) = TRUE
getResult(NFSC503_5_9_2) = TRUE
getResult(NFSC503_5_9_3) = TRUE
}
Python Code 변환 예정
85
연결살수설비의 화재안전기준(NFSC 503) 제 5조 9 항 1호
1. 교차배관은 가지배관과 수평으로 설치하거나 또는 가지배관 밑에 설치하고, 그 구경은 제2항에 따르되, 최소구경이 40㎜ 이상이 되도록 할 것
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 9항 1호
Check(NFSC503_5_9_1){
KS
}
KS{
Pipe myPipe 1{
isObjectProperty(Pipe .isCrossMains) = TRUE
isObjectProperty(Pipe .systemType) = "HookingUpSprinklerSystem"
}
Pipe myPipe 2{
isObjectProperty(Pipe .isBranchLines) = TRUE
isObjectProperty(Pipe .systemType) = "HookingUpSprinklerSystem"
}
(isParallel(myPipe 1, myPipe 2) = TRUE
OR getObjectVerticalLocation(myPipe 1, myPipe 2) < 0)
getObjectDiameter(myPipe 1) >= 40mm
getResult(NFSC503_5_2) = TRUE
}
Python Code 변환 예정
86
연결살수설비의 화재안전기준(NFSC 503) 제 5조 9 항 2호
2. 폐쇄형헤드를 사용하는 연결살수설비의 청소구는 주배관 또는 교차배관(교차배관을 설치하는 경우에 한한다) 끝에 40㎜ 이상 크기의 개폐밸브를 설치하고, 호스접결이 가능한 나사식 또는 고정배수 배관식으로 할 것. 이 경우 나사식의 개폐밸브는 옥내소화전 호스접결용의 것으로 하고, 나사보호용의 캡으로 마감하여야 한다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 9항 2호
Check(NFSC503_5_9_2){
IF CS THEN KS
}
CS{
Head myHead{
isObjectProperty(Head.openAndCloseType)="EnclosedType"
}
isObjectProperty(myHead.systemType) = "HookingUpSprinklerSystem"
}
KS{
Pipe myPipe 1{
isObjectProperty(Pipe .isRiser) = TRUE
}
Pipe myPipe 2{
isObjectProperty(Pipe .isCrossMains) = TRUE
}
Valve myValve{
isObjectProperty(Valve.isShutoffValve) = TRUE
getObjectLength(Valve) >= 40mm
}
getObjectProperty(myValve.Type) = "나사식"
getObjectProperty(myValve.usage) = "옥내소화전 호스접결용"
}
Python Code 변환 예정
87
연결살수설비의 화재안전기준(NFSC 503) 제 5조 9 항 3호
3. 폐쇄형헤드를 사용하는 연결살수설비에 하향식헤드를 설치하는 경우에는 가지배관으로부터 헤드에 이르는 헤드접속배관은 가지관상부에서 분기할 것. 다만, 소화설비용 수원의 수질이 「먹는물관리법」 제5조에 따라 먹는물의 수질기준에 적합하고 덮개가 있는 저수조로부터 물을 공급받는 경우에는 가지배관의 측면 또는 하부에서 분기할 수 있다.
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 9항 3호
Check(NFSC503_5_9_3){
IF CS THEN KS
}
Head myHead1{
isObjectProperty(Head.openAndCloseType) = "EnclosedType"
}
Head myHead2{
isObjectProperty(myHead.installationDirectionType) = "TopDownType"
}
CS{
isObjectProperty(myHead1.systemType) = "HookingUpSprinklerSystem"
isInstalled(myHead2, HookingUpSprinklerSystem) = TRUE
}
KS{
Pipe myPipe 1{
isObjectProperty(Pipe .isBranchLines) = TRUE
}
Pipe myPipe 2{
isConnectedTo(Pipe , myPipe 1) = TRUE
isConnectedTo(Pipe , myHead2) = TRUE
}
getObjectVerticalLocation(myPipe 2, myPipe 1) > 0
}
Python Code 변환 예정
88
연결살수설비의 화재안전기준(NFSC 503) 제 5조 10 항
⑩ 배관에 설치되는 행가는 다음 각 호의 기준에 따라 설치하여야 한다. <개정 2012.8.20>
// 연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 10항
Check(NFSC503_5_10){
IF CS THEN KS
}
CS{
isInstalled(Hanger, Pipe ) = TRUE
}
KS{
getResult(NFSC503_5_10_1) = TRUE
getResult(NFSC503_5_10_2) = TRUE
getResult(NFSC503_5_10_3) = TRUE
}
Python Code 변환 예정
89
연결살수설비의 화재안전기준(NFSC 503) 제 5조 10 항 1호
1. 가지배관에는 헤드의 설치지점 사이마다 1개 이상의 행가를 설치하되, 헤드간의 거리가 3.5 m를 초과하는 경우에는 3.5m 이내마다 1개 이상 설치할 것. 이 경우 상향식헤드와 행가 사이에는 8 ㎝ 이상의 간격을 두어야 한다.
//연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 10항 1호
Check(NFSC503_5_10_1){
KS
}
Pipe myPipe {
isObjectProperty(Pipe .isBranchLines)=True
}
Head myHead{
getObjectProperty(Head.installationDirectionType)="BottomUpType"
}
KS{
isInstalled(Hanger, myPipe , "헤드의 설치지점 사이")=True
IF getObjectDistance(Head)>3.5 m
THEN isInstalled(Hanger, myPipe , 3.5 m)=True
getObjectDistance(myHead, Hanger)>8 cm
getResult(NFSC503_5_10_3)=True
}
Python Code 변환 예정
90
연결살수설비의 화재안전기준(NFSC 503) 제 5조 10 항 2호
2. 교차배관에는 가지배관과 가지배관사이마다 1개 이상의 행가를 설치하되, 가지배관 사이의 거리가 4.5 m를 초과하는 경우에는 4.5 m 이내마다 1개 이상 설치할 것
//연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 10항 2호
Check(NFSC503_5_10_2){
KS
}
Pipe myPipe {
isObjectProperty(Pipe .isCrossMains)=True
}
Pipe myPipe 2{
isObjectProperty(Pipe .isBranchLines)=True
}
KS{
isInstalled(Hanger, myPipe , "가지배관 사이")=True
IF getObjectDistance(myPipe 2)>4.5 m
THEN isInstalled(Hanger, myPipe , 4.5 m)=True
END IF
getResult(NFSC503_5_10_3)=True
}
Python Code 변환 예정
91
연결살수설비의 화재안전기준(NFSC 503) 제 5조 10 항 3호
3. 제1호와 제2호의 수평주행배관에는 4.5 m 이내마다 1개 이상 설치할 것
//연결살수설비의 화재안전기준(nfsc 503) 5조 (배관 등) 10항 3호
Check(NFSC503_5_10_3){
IF CS THEN KS
}
CS{
isObjectProperty(Pipe .isFeedMains)=True
}
Pipe myPipe 2{
isObjectProperty(Pipe .isFeedMains)=True
}
KS{
isInstalled(Hanger, myPipe 2,4.5 m)=True
}
Python Code 변환 예정
92
연결살수설비의 화재안전기준(NFSC 503) 제 6조 3 항 6호
6. 천장의 기울기가 10분의 1을 초과하는 경우에는 가지관을 천장의 마루와 평행하게 설치하고, 스프링클러헤드는 다음 각 목의 어느 하나의 기준에 적합하게 설치할 것
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 6호
Check(NFSC503_6_3_6){
IF CS THEN (KS1 AND KS2)
}
CS{
getObjectProperty(Ceiling.gradient) > 0.1
}
KS1{
isObjectProperty(Pipe .isBranchLines) = TRUE
isParallel(Pipe , Ceiling.Top.) = TRUE
}
KS2{
getResult(NFSC503_6_3_6_1) = TRUE
getResult(NFSC503_6_3_6_2) = TRUE
}
Python Code 변환 예정
93
연결살수설비의 화재안전기준(NFSC 503) 제 6조 3 항 8호
8. 습식 연결살수설비외의 설비에는 상향식스프링클러헤드를 설치할 것. 다만, 다음 각 목의 어느 하나에 해당하는 경우에는 그러하지 아니하다.
//연결살수설비의 화재안전기준(nfsc 503) 6조 (연결살수설비의 헤드) 3항 8호
Check(NFSC503_6_3_8){
IF CS THEN KS
}
CS{
isObjectProperty(SprinklerSystem.type) != WetPipe SprinklerSystem
(getResult(NFSC503_6_3_8_1) = FALSE
OR getResult(NFSC503_6_3_8_2) = FALSE)
}
KS{
mySprinklerHead{
getObjectProperty(SprinklerSystem.Head.installationDirectionType) = "BottomUpType"
}
isExist(mySprinklerHead) = TRUE
}
Python Code 변환 예정
94
연결송수관설비의 화재안전기준(NFSC 502) 제 4조 4호
4. 송수구로부터 연결송수관설비의 주배관에 이르는 연결배관에 개폐밸브를 설치한 때에는 그 개폐상태를 쉽게 확인 및 조작할 수 있는 옥외 또는 기계실 등의 장소에 설치할 것. 이 경우 개폐밸브에는 그 밸브의 개폐상태를 감시제어반에서 확인할 수 있도록 급수개폐밸브 작동표시 스위치를 다음 각 목의 기준에 따라 설치하여야 한다. <개정 2014.8.18>
//연결송수관설비의 화재안전기준(NFSC 502) 4조 (송수구) 4호
Check(NFSC502_4_0_4){
IF CS THEN KS
}
CS{
Pipe myPipe 1{
Pipe .systemType = "FireDepartmentConnectionSystem"
Pipe .isRiser = TRUE
}
Pipe myPipe 2{
isConnectedTo(FireDepartmentConnection, Pipe )=True
isConnectedTo(myPipe 1, Pipe )=True
}
Valve myValve{
isObjectProperty(Valve.isShutoffValve)=True
}
hasObject(myConnectionPipe , myValve)=True
}
KS{
isExternal(myValve)=True
OR (hasObject(Space, myValve)=True
getSpaceUsage(Space) = "MachinRoom"
}
Python Code 변환 예정
95
연결송수관설비의 화재안전기준(NFSC 502) 제 4조 7호
7. 송수구는 연결송수관의 수직배관마다 1개 이상을 설치할 것. 다만, 하나의 건축물에 설치된 각 수직배관이 중간에 개폐밸브가 설치되지 아니한 배관으로 상호 연결되어 있는 경우에는 건축물마다 1개씩 설치할 수 있다.
//연결송수관설비의 화재안전기준(NFSC 502) 4조 (송수구) 7호
Check(NFSC502_4_0_7){
IF CS THEN KS1 ELSE KS2
}
CS{
Port myPort{
Port.typeForWater = "FireDepartmentConnection"
}
Pipe myPipe {
Pipe .systemType = "FireDepartmentConnectionSystem"
isObjectProperty(Pipe .isRiser)=True
}
Pipe myPipe 2{
isInstalled( myValve, Pipe )=False
}
Valve myValve{
isObjectProperty(Valve.isShutOffValve)=True
}
isConnectedTo(myPipe , myPipe 2)=True
}
KS1{
isInstalled(myPort)=True
}
KS2{
getObjectCount(myPort,myPipe )>=1
}
Python Code 변환 예정
96
연결송수관설비의 화재안전기준(NFSC 502) 제 5조 1 항 1호
1. 주배관의 구경은 100㎜ 이상의 것으로 할 것
//연결송수관설비의 화재안전기준(NFSC 502) 5조 (배관) 1항 1호
Check(NFSC502_5_1_1){
KS
}
KS{
Pipe myPipe {
Pipe .isRiser = TRUE
Pipe .systemType = "FireDepartmentConnectionSystem"
}
getObjectDiameter(myPipe )>=100 mm
}
Python Code 변환 예정
97
연결송수관설비의 화재안전기준(NFSC 502) 제 5조 2 항 1호
1. 배관 내 사용압력이 1.2 ㎫ 미만일 경우에는 다음 각 목의 어느 하나에 해당하는 것 또는 동등 이상의 강도·내식성 및 내열성을 가진 것
//연결송수관설비의 화재안전기준(NFSC 502) 5조 (배관) 2항 1호
Check(NFSC502_5_2_1){
IF CS THEN KS
}
CS{
getObjectProperty(Pipe .workingPressure)<1.2 MPa
}
KS{
getResult(NFSC502_5_2_1_가)=True
OR getResult(NFSC502_5_2_1_나)=True
OR getResult(NFSC502_5_2_1_다)=True
}
Python Code 변환 예정
98
연결송수관설비의 화재안전기준(NFSC 502) 제 5조 2 항 1호 가 목
가. 배관용 탄소강관(KS D 3507)
//연결송수관설비의 화재안전기준(NFSC 502) 5조 (배관) 2항 1호 가목
Check(NFSC502_5_2_1_가){
KS
}
KS{
getObjectMaterial(Pipe )="KSD3507"
}
Python Code 변환 예정
99
연결송수관설비의 화재안전기준(NFSC 502) 제 5조 2 항 1호 나 목
나. 이음매 없는 구리 및 구리합금관(KS D 5301). 다만, 습식의 배관에 한한다.
//연결송수관설비의 화재안전기준(NFSC 502) 5조 (배관) 2항 1호 나목
Check(NFSC502_5_2_1_나){
IF CS THEN KS
}
CS{
getObjectProperty(Pipe .type)="WetPipe "
}
KS{
getObjectMaterial(Pipe )="KSD5301"
}
Python Code 변환 예정
100
연결송수관설비의 화재안전기준(NFSC 502) 제 5조 2 항 1호 다 목
다. 배관용 스테인리스강관(KS D 3576) 또는 일반배관용 스테인리스강관(KS D 3595)
//연결송수관설비의 화재안전기준(NFSC 502) 5조 (배관) 2항 1호 다목
Check(NFSC502_5_2_1){
KS
}
KS{
getObjectMaterial(Pipe )="KSD3576"
OR getObjectMateral(Pipe )="KSD3595"
}
Python Code 변환 예정