Looking for critique, suggestions, insight, etc. for HVAC unit stage control

The compressor comes up to speed but the refrigerant hasnt started absorbing the conditioned space temperature yet. So there is no way to know how much BTU load is in the system. My answer is coming from multiple stages in 1 HVAC unit.

Now if your talking about multiple single units than yes just start one unit wait till the current draw levels out after XX.X time then starr the next.


That way makes more sense - the previous post the OP was saying a 5 minute delay on each rooftop unit that brought this question to mind then, but I didn't ask then.
 
Thanks, everyone. I was being very generous when I stated the original system “did not perform well.” Two weekends ago I finally dumped all aspects of the original vendor code. Now we have a useable HMI, reliable unit communication, and actual control of the units, which is way above what we had previously.

Now that we have reliable communication to each unit that we didn’t have the previous two years, I’m trying to create some smart stage control. The original intent of this system was energy savings, and I would like to actually save energy where practical.

For clarification, I continuously have one stage enabled to the unit but the unit turns that on and off with temperature. When I enable more, the unit cools with more tonnage, but still cycles compressors on / off by temperature. The fan is enabled continuously on these. I think some units have independent temperature sensors and might not always use the maximum compressors I enable.

I know the original fixed five minute stage delay was poor. My unit code now has adjustable whole minutes for stage delay. I’ll change that to either adjustable seconds or fixed 10 seconds in the next revision. My initial attack plan shown in post 1 is to start each cycle with one stage and if that’s not enough, add another. It’s a start but it could be better. This discussion is helping me figure out how to make that better.

Some ideas in my mind now: At least in some conditions, I will not reset the stage count to one when a cooling cycle stops. Some possible triggers to reduce the count would be monitoring compressor duty cycle or cycle time and reduce the count below a threshold. Another trigger could be when outside temperature drops maybe ten degrees from when the stages increased.

Most of our units have zero, one, or two stages each of heat and cool. The most stages of either is four. The 820 has enough outputs to nicely do three stages each. have some Micro850s on order for units with four stages of either.

All the units appear to cycle through the cooling circuits to rotate compressor usage without my intervention. I haven't seen heating, but I expect they also rotate that. The 820 (or 850) is feeding W1 through W4 to enable one to four heating stages and / or Y1 through Y4 to enable one to four cooling stages. I'm basically a thermostat to the unit.

I am slightly familiar with BACnet. Another part of this system is four Trane units with ADFWeb Ethernet/IP to BACnet gateways at the other end of wireless Ethernet. Currently I have no data from them because this “not perform well” system has been bypassed so that we can actually condition the space. I’ll get to that later. I would really like Spectrum to make a 2080 BACnet module that is a master and put Micro820s in them as a data buffer to MSGs. Alternatively I could use an 820 and a Modbus RTU to BACnet gateway.

We’re starting plans to replace a few units a year for the next few years. I’m sure I’ll see more BACnet possibilities, but Modbus RTU to the 820 onboard port or a 2080-SERIALISOL will probably be my first choice if I don’t get a 2080 BACnet master.

There has been no humidity control in my plans. Units like the Tranes already take care of that in the important areas. Any control I might try there would almost certainly not be better than what the unit is already doing.
 
Ah, the penny drops (for me): the .CoolReqOn and .HeatReqOn bits are the temperature-driven bang-bang control signal from the "unit," and your code tells the unit how many stages to run simultaneously.

That being the case, this scheme is similar to the "Speed control using level switches" previous thread at this link.

  • Level in the tank/sump in the previous thread is analogous to thermal energy (and therefore temperature) in the warehouse in this thread.
  • The high level switch signal in the previous thread is analogous to the .CoolReqOn signal in this thread.
  • Flow into the tank/sump in the previous thread is analogous to thermal energy transfer into the warehouse from the hotter ambient conditions in this thread.
  • Flow out of the tank/sump controlled via pump speed in the previous thread is analogous to thermal energy transfer out of the warehouse controlled via the A/C units in this thread.
  • Incrementing or decrementing VFD/Pump speed by steps in the previous thread analogous to increasing or decreasing the number of stages to run, when .CoolReqOn is 1, in this thread
So what you want to do is to "give back" half of the stage increases each time. That said, is are not analogous between the two threads are the resolution of each control output: the VFD speed range from the previous thread can probably be commanded over a few hundred or thousand increments; the stages of this thread have at most four steps. So "giving back half" is more or less meaningless.

OP said they want to minimize energy. So the actual question is whether it will use less energy, over the long term, to

  • EITHER run all of the stages, when .CoolReqOn becomes 1, and to cool the warehouse as quickly as possible and get the unit to set .CoolReqOn back to 0 as quickly as possible, so each cycle is as short as possible,
    • [high power] times [short time] = energy usage
  • OR run the minimum number of stages that will cool the warehouse less quickly over a longer cycle.
    • [low power] times [long time] = energy usage
Another piece of the optimization is how much of a temperature excursion is allowable.

A similar problem was anaylyzed years ago for getting the best gas mileage (Miles per gallon; km [rt litre) with ICE cars that are stopping and accelerating. It turned out that slightly better mileage is achieved by accelerating hard to the target speed (speed limit), because an ICE is, in part, an air pump, and having the throttle more open during acceleration reduces the overall energy requirement per mile. I'm not saying the same is true here, but who knows.
 
The gas mileage efficiency thing got me wondering about this system. I setup the test unit to run one stage and two stages every other cycle. The stage delay is now 10 seconds. I’m logging the last 400 cycles in the PLC. Next week sometime I’ll crunch some numbers to find some efficiency statistics.

During a one stage cycle, if the 5min-5min delta (formerly known as Slope10) goes positive for five minutes, the second stage kicks on. That happened during one cycle this afternoon. The trend is attached. I figure sometime around 18:00 would have been a better time for the second stage to start. I’m still thinking about a good algorithm to trigger the second stage. A full day trend of alternating 1 & 2 stage cycles is also attached.

I fixed the pen colors too.

One stage not enough.jpg Previous day.jpg
 
Last edited:
Although it's interesting, I am unsure whether the derivative parameter ([Last X minutes] - [Previous X minutes]) is useful to choose when to add a stage. A better algorithm might be if space temperature does not reach [setpoint - deadband] in [some time; 1h? 1.25h? 1.5h?], since the last stage was started, then add a stage.

The PLC could also fit the temporal temperature data to an exponential model, after the blue line settles, and predict whether the system will reach [setpoint - deadband] within Z minutes (or at all), and add the next stage if that Z will not be "soon enough," but that is gilding the lily.
 
Most multistage thermostats are time based. When to bring in the next stage. After XX minutes of no change or of temperature rise.
I dont know that I have seen any systems control on the rate of change.
 
"Back of the envelope"

Calculation of condition required for cost of running N stages for a shorter time to be less than running 1 stage for a longer time.

Assumptions should be obvious, are linear, and probably reasonable.
PXL_20220807_135153163.jpg
 

Similar Topics

Hi , Where i can find Mitsubishi PLC Card end of line & replacement model details. i am looking for Q02CPU replacement model. Please advice. thanks
Replies
2
Views
128
I have Allen Bradley plcs, I have had Circuit breakers and other automation equipment in the past. There's no solid buyers local. How much do you...
Replies
2
Views
205
can anyone has a good program to learn plc programming online. i have the basic looking into improve my skills thanks
Replies
1
Views
146
I want to monitor a couple signals in a place where there is no PLC but there is ethernet. I know I can use an AENTR or Flex I/O and a module but...
Replies
21
Views
788
I downloaded v24 for studio 5000 but can’t find where the download manager put it! Any help? I’ve done it before but can’t remember. Thanks
Replies
9
Views
398
Back
Top Bottom