Fix VRF Thermostat Control Type Issues#11611
Conversation
| state.dataHVACVarRefFlow->CoolingLoad(VRFCond) = true; | ||
| } else if (state.dataHVACVarRefFlow->VRF(VRFCond).prioritySched->getCurrentVal() == 1) { | ||
| state.dataHVACVarRefFlow->HeatingLoad(VRFCond) = true; | ||
| state.dataHVACVarRefFlow->CoolingLoad(VRFCond) = false; |
There was a problem hiding this comment.
just wondering why? If scheduled didn't work before then it doesn't matter but why bother changing this?
There was a problem hiding this comment.
This is to align the behavior with the IDD.
A26, \field Thermostat Priority Schedule Name
\type object-list
\object-list ScheduleNames
\note this field is required if Master Thermostat Priority Control Type is Scheduled.
\note Schedule values of 0 denote cooling, 1 for heating, and all other values disable the system.
| state.dataHVACVarRefFlow->CoolingLoad(VRFCond) = true; | ||
| } else if (state.dataHVACVarRefFlow->VRF(VRFCond).prioritySched->getCurrentVal() == 1) { | ||
| state.dataHVACVarRefFlow->HeatingLoad(VRFCond) = true; | ||
| state.dataHVACVarRefFlow->CoolingLoad(VRFCond) = false; |
There was a problem hiding this comment.
This is to align the behavior with the IDD.
A26, \field Thermostat Priority Schedule Name
\type object-list
\object-list ScheduleNames
\note this field is required if Master Thermostat Priority Control Type is Scheduled.
\note Schedule values of 0 denote cooling, 1 for heating, and all other values disable the system.
| \paragraph{Field: Thermostat Priority Schedule Name}\label{field-thermostat-priority-schedule-name-000} | ||
|
|
||
| This alpha field identifies the schedule used when the previous field is set to Scheduled. Schedule values of 0 denote heating mode while values of 1 denote cooling mode. Any other values will force the system off. | ||
| This alpha field identifies the schedule used when the previous field is set to Scheduled. Schedule values of 0 denote cooling mode while values of 1 denote heating mode. Any other values will force the system off. |
There was a problem hiding this comment.
IDD vs. the code & docs had these reversed. I deferred to the IDD, but we can change that if the reverse would be better.
| } | ||
|
|
||
| if (thisVrfSys.ThermostatPriority == ThermostatCtrlType::ScheduledPriority) { | ||
| if (thisVrfSys.ThermostatPriority == ThermostatCtrlType::Scheduled) { |
There was a problem hiding this comment.
Renamed to be consistent with the IDD key choice.
| case ThermostatCtrlType::FirstOnPriority: { | ||
| // na | ||
| } break; |
There was a problem hiding this comment.
Unused, so I got rid of it.
| "LOADPRIORITY", | ||
| "MASTERTHERMOSTATPRIORITY", | ||
| "SCHEDULED", | ||
| "THERMOSTATOFFSETPRIORITY", | ||
| "ZONEPRIORITY", |
There was a problem hiding this comment.
Removed the unused place holder, and sorted the list.
| }; | ||
|
|
||
| static constexpr std::array<std::string_view, static_cast<int>(ThermostatCtrlType::Num)> ThermostatCtrlTypeUC = { | ||
| "LOADPRIORITY", "ZONEPRIORITY", "THERMOSTATOFFSETPRIORITY", "SCHEDULEDPRIORITY", "MASTERTHERMOSTATPRIORITY", |
There was a problem hiding this comment.
This is the real fix - changing SCHEDULEDPRIORITY to SCHEDULED since that is the key in the IDD that this is looking for.
Pull request overview
AirConditioner:VariableRefrigerantFlownot working withScheduledmaster thermostat #11610Description of the purpose of this PR
Pull Request Author
Reviewer