-
Notifications
You must be signed in to change notification settings - Fork 418
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Addressed FanCoil with CyclingFan control using Fan:SystemModel has different fan power than Fan:OnOff #7380
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3594,8 +3594,7 @@ namespace FanCoilUnits { | |
ZoneCompTurnFansOn, | ||
ZoneCompTurnFansOff); | ||
} else { | ||
HVACFan::fanObjs[FanCoil(FanCoilNum).FanIndex]->simulate( | ||
FanCoil(FanCoilNum).LowSpeedRatio, ZoneCompTurnFansOn, ZoneCompTurnFansOff, _); | ||
HVACFan::fanObjs[FanCoil(FanCoilNum).FanIndex]->simulate(_, ZoneCompTurnFansOn, ZoneCompTurnFansOff, _); | ||
} | ||
} else if (FanCoil(FanCoilNum).SpeedFanSel == 2) { | ||
|
||
|
@@ -3607,15 +3606,22 @@ namespace FanCoilUnits { | |
ZoneCompTurnFansOn, | ||
ZoneCompTurnFansOff); | ||
} else { | ||
HVACFan::fanObjs[FanCoil(FanCoilNum).FanIndex]->simulate( | ||
FanCoil(FanCoilNum).MedSpeedRatio, ZoneCompTurnFansOn, ZoneCompTurnFansOff, _); | ||
HVACFan::fanObjs[FanCoil(FanCoilNum).FanIndex]->simulate(_, ZoneCompTurnFansOn, ZoneCompTurnFansOff, _); | ||
} | ||
} else { // using 1.0 here for fan speed ratio seems wrong if FCU max flow rate is different than the fan maximum flow rate | ||
} else if (FanCoil(FanCoilNum).SpeedFanSel == 3) { | ||
|
||
if (FanCoil(FanCoilNum).FanType_Num != DataHVACGlobals::FanType_SystemModelObject) { | ||
Fans::SimulateFanComponents( | ||
FanCoil(FanCoilNum).FanName, FirstHVACIteration, FanCoil(FanCoilNum).FanIndex, 1.0, ZoneCompTurnFansOn, ZoneCompTurnFansOff); | ||
} else { | ||
HVACFan::fanObjs[FanCoil(FanCoilNum).FanIndex]->simulate(1.0, ZoneCompTurnFansOn, ZoneCompTurnFansOff, _); | ||
HVACFan::fanObjs[FanCoil(FanCoilNum).FanIndex]->simulate(_, ZoneCompTurnFansOn, ZoneCompTurnFansOff, _); | ||
} | ||
} else { // using 1.0 here for fan speed ratio seems wrong if FCU max flow rate is different than the fan maximum flow rate | ||
if (FanCoil(FanCoilNum).FanType_Num != DataHVACGlobals::FanType_SystemModelObject) { | ||
Fans::SimulateFanComponents( | ||
FanCoil(FanCoilNum).FanName, FirstHVACIteration, FanCoil(FanCoilNum).FanIndex, 0.0, ZoneCompTurnFansOn, ZoneCompTurnFansOff); | ||
} else { | ||
HVACFan::fanObjs[FanCoil(FanCoilNum).FanIndex]->simulate(0.0, ZoneCompTurnFansOn, ZoneCompTurnFansOff, _); | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is this change required for fixing this defect or is this an unrelated change? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. If you referring to the last line where I set 0.0 for speed ratio, is to turn off the fan. Simple because the unit is off if no fan speed is specified. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The fancoil unit is expected to operate at one of the three fan speed levels, if the fan speed is not set yet, then the fan coil unit must be off. Otherwise, what does the fancoil unit do if no fan speed set yet? I observed such a case when I was debugging the defect. |
||
} | ||
} | ||
if (FanCoil(FanCoilNum).CCoilType_Num == CCoil_HXAssist) { | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you walk me through this change? By not passing a speed ratio, does this force the fan object to operate at a single discrete mode? Is that what fixes the fan to operate just like the Fan:OnOff?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We do not want to pass the fan speed ratio for cycling operating mode. FanCoilUnits cycling mode are designed such that the fan coil unit cycles at each speed level. Thus passing speed ratio will result incorrect fan power calculation. By not passing the fan speed ratio, the fansystem model locally calculates average flow fraction instead, for the fan power calculation.