Page 1 of 2 12 LastLast
Results 1 to 13 of 23
  1. #1
    Join Date
    Apr 2006
    Location
    Columbus, Ohio
    Posts
    1,229
    Post Likes

    General PI Control Question for Lab

    I have a job where I have an extremely complicated control sequence that the engineer wants me to accomplish. The application is for an experimental lab that requires a SINGLE temperature setpoint ranging from 50 degrees to 100 degrees, and a SINGLE humidity setpoint ranging from 20% RH to 70% RH. They are calling for a discharge air reset algorithm to control the space temperature, and a suction pressure reset algorithm for controlling the dehumidification. My question in more in regards to the discharge air reset.

    Typically I would do a reset schedule that would look at the space temperature, and utilize four adjustable plots for discharge air temperature setpoint control. For instance if the space temperature is 74 degrees then utilize 52 degree DAT, if the space temperature is 70 degrees utilize 70 DAT. The discharge air would be reset proportionally between 52 degrees to 70 degrees based on the space temperature. However in this application I was questioning what it would look like if I utilized a single room temperature PI loop that drove the reset schedule for heating and cooling. Typically I would enable the heating and cooling loops based on heating/ cooling setpoints, but in this application I need to have very precise temperature control with things moving very smoothly based on (1) room temperature setpoint.

    I know there are tons of different ways to do this, but I was wanting to get some feedback on some known methods that work really well. I have heard of people using 1 single room temperature loop to drive their reset schedules. I have heard of people using 1 single loop, and breaking up certain percentages of it for heating and cooling. I have also heard of people using separate control loops for everything. What is the most common way to accomplish a single temperature setpoint with precision?

    Thanks for the feedback on this!
    J. King

  2. #2
    Join Date
    Jul 2015
    Location
    Vancouver, BC, Canada
    Posts
    10
    Post Likes
    Hi apprentice3,
    You're right. There a many ways to accomplish the same thing. The trick is using a method that is only as complex as it needs to be. Something like the process you describe might need more complexity than a typical single zone RTU supplying an office.

    Regardless of complexity, I always prefer to have a separate control loop for every physical output so that it is possible to tune the loop to the actual control process response. It's also a good idea to have the output control loops look at directly measurable process variables. i.e. Heating Valve control loop is calculated based on discharge air temperature and discharge air setpoint. This way the control loop is easy to tune for the specific mechanical system.

    If you need to both heat and cool based on the same discharge air temperature setpoint, you just need to write logic to determine which loop is acting on the set point and which loop is acting on the setpoint plus an offset. i.e. If space temperature is above the space temperature setpoint then the cooling loop setpoint is the discharge air setpoint and the heating loop setpoint is the discharge air setpoint - 1. Vise versa if the space temperature is below the space temperature setpoint.

    To have a the heating & cooling respond to the space temperature, i would define another control loop to determine the discharge air set point. The space temperature control loop compares the space temperature to the space temperature setpoint and the loop output will determine the discharge air temperature setpoint from a minimum value to a maximum value. This allows tuned mechanical equipment response which is proportional to the needs of the space. The integral response of the space temperature loop will allow the system to respond appropriately under varying load conditions.

  3. #3
    Join Date
    Apr 2006
    Location
    Columbus, Ohio
    Posts
    1,229
    Post Likes
    Thread Starter
    Quote Originally Posted by CtrlAutomaton View Post
    Hi apprentice3,
    You're right. There a many ways to accomplish the same thing. The trick is using a method that is only as complex as it needs to be. Something like the process you describe might need more complexity than a typical single zone RTU supplying an office.

    Regardless of complexity, I always prefer to have a separate control loop for every physical output so that it is possible to tune the loop to the actual control process response. It's also a good idea to have the output control loops look at directly measurable process variables. i.e. Heating Valve control loop is calculated based on discharge air temperature and discharge air setpoint. This way the control loop is easy to tune for the specific mechanical system.

    If you need to both heat and cool based on the same discharge air temperature setpoint, you just need to write logic to determine which loop is acting on the set point and which loop is acting on the setpoint plus an offset. i.e. If space temperature is above the space temperature setpoint then the cooling loop setpoint is the discharge air setpoint and the heating loop setpoint is the discharge air setpoint - 1. Vise versa if the space temperature is below the space temperature setpoint.

    To have a the heating & cooling respond to the space temperature, i would define another control loop to determine the discharge air set point. The space temperature control loop compares the space temperature to the space temperature setpoint and the loop output will determine the discharge air temperature setpoint from a minimum value to a maximum value. This allows tuned mechanical equipment response which is proportional to the needs of the space. The integral response of the space temperature loop will allow the system to respond appropriately under varying load conditions.
    Thanks for your response. This helps out a lot in the way I was thinking about this. I did want to clarify something in the 3rd paragraph that you wrote. So essentially I would just write logic dependent on the space temperature versus the setpoint that would ENABLE/ DISABLE the cooling and heating loops?
    J. King

  4. #4
    Join Date
    Feb 2006
    Location
    Float'N Vally, MS
    Posts
    2,874
    Post Likes
    Do these labs have hoods?
    If so this is really gonna get complicated...
    Life is too short, Behappy!
    TFMM

  5. #5
    Join Date
    Apr 2006
    Location
    Columbus, Ohio
    Posts
    1,229
    Post Likes
    Thread Starter
    Quote Originally Posted by behappy View Post
    Do these labs have hoods?
    If so this is really gonna get complicated...
    No not these particular ones. There are labs with hoods that we are just integrating some factory installed controls. These labs are considered climate controlled rooms/ test chambers for product.
    J. King

  6. #6
    Join Date
    Jul 2015
    Location
    Vancouver, BC, Canada
    Posts
    10
    Post Likes
    It really depends on the system you are using. You just want to make sure the loops don't act on the same setpoint at the same time and fight each other.

    I would prefer to keep both loops operating but just change the setpoints they are trying to maintain. This way the non active loop can respond right away if something changes or the other loop overshoots. (Overshooting shouldnt happen however if the loops are tuned well)

  7. #7
    Join Date
    Jan 2003
    Location
    USA
    Posts
    5,197
    Post Likes
    Quote Originally Posted by apprentice3 View Post
    However in this application I was questioning what it would look like if I utilized a single room temperature PI loop that drove the reset schedule for heating and cooling.
    Pretty close to what I do everywhere. Low budget office space, to tightly controlled requirements. #1 your key sensors better be well under the requirement. Lets just assume its a space with a tight requirement, they almost always spell out room conditions and tolerances.

    I have a minimum and maximum setpoint based on these that I need to control heat & cool. Assuming one unit, one space...

    I have a total of 4 PIDs. A pair would control off space temp and use the heat/cool space setpoints which would have some deadband, even if its 1F. My goal would be control to 50% of the spec deadband, not always reasonable. The output of these may be such that heating runs 0-100% and cooling 0-(-100)% and they are added so we are heating or cooling, but never both. The final demand from this pair would set the DAT setpoint. Within the space heat/cool setpoints, I normally have a fixed value or let it float so its not normally just a straight line between min/max DAT setpoint. For tight control, DAT setpoint is likely = space setpoint or close depending on typical load within deadband. A benefit of this one PID overshoots the other pulls it back, though this should be an edge case. Space temp changes typically at a very different rate than DAT, so have control of tuning rates between. If you can't tune loops, its still a crap show.

    The next two PIDs are controlling to DAT and use the prior DAT calculated setpoint. Depending on the equipment and its capabilities, the hgt/clg DAT setpoints are going to be some value +/- this setpoint. HW/CW it might be only 2F. DX/gas it could be 10F+. Same thing, outputs sum together to ensure its heat or cool not both. These more or less drive the hgt/clg outputs with all the safety interlocks. Fan status, OAT lockouts, TAB/CX overrides, freeze protection, etc.

    At least with what I work with, this strategy gives me a very robust program that I can easily tweak for any temp/rh spec and given equipment.
    Last edited by orion242; 11-23-2018 at 09:18 PM.
    Propagating the formula. http://www.noagendashow.com/

  8. #8
    Join Date
    Apr 2006
    Location
    Columbus, Ohio
    Posts
    1,229
    Post Likes
    Thread Starter
    Quote Originally Posted by orion242 View Post
    Pretty close to what I do everywhere. Low budget office space, to tightly controlled requirements. Lets just assume its a space with a tight requirement, they almost always spell out room conditions and tolerances.

    I have a minimum and maximum setpoint based on these that I need to control heat & cool. Assuming one unit, one space...

    I have a total of 4 PIDs. A pair would control off space temp and use the heat/cool space setpoints which would have some deadband, even if its 1F. My goal would be control to 50% of the spec deadband, not always reasonable. The output of these may be such that heating runs 0-100% and cooling 0-(-100)% and they are added so we are heating or cooling, but never both. The final demand from this pair would set the DAT setpoint. Within the space heat/cool setpoints, I normally have a fixed value or let it float so its not normally just a straight line between min/max DAT setpoint. For tight control, DAT setpoint is likely = space setpoint or close depending on typical load within deadband. A benefit of this one PID overshoots the other pulls it back, though this should be an edge case. If you can't tune loops, its still a crap show.

    The next two PIDs are controlling to DAT and use the prior DAT calculated setpoint. Depending on the equipment and its capabilities, the hgt/clg DAT setpoints are going to be some value +/- this setpoint. HW/CW it might be only 2F. DX/gas its could be 10F+. Same thing, outputs sum together to ensure its heat or cool not both. These more or less drive the hgt/clg outputs with all the safety interlocks. Fan status OAT lockouts, TAB/CX overrides, freeze protection, etc.

    At least with what I work with, this strategy gives me a very robust program that I can easily tweak for any temp/rh spec given the equipment is capable of maintaining it.
    Thanks for your reply! This is very helpful. So when you are saying that the 2 loops are added, are you saying that they essentially modulate from 0-200% (kind of like a Honeywell Spyder PID)? I would like to know more details on that portion of what your saying. Thanks again.
    J. King

  9. #9
    Join Date
    Jan 2003
    Location
    USA
    Posts
    5,197
    Post Likes
    I'm aware of the spudder loops and their crazy behavior where they output more than 0-100%. Certainly not something that can't be dealt with my example working with 0-100% PIDs. HW I don't use enough to know exactly how I would tame the PID, but their output isn't what I would consider idea. Would likely toss out values outside 0-100% in my setup for starters, but again don't normally deal with that BS. Every PID loop has its own personality and needs to be contained within its happy spot. That said, having space hgt/clg demand calced differently from your DAT control is still valid.
    Propagating the formula. http://www.noagendashow.com/

  10. #10
    Join Date
    Dec 2007
    Location
    Connecticut
    Posts
    1,162
    Post Likes
    Is this an AAON unit? It sounds like something i've done in the past with a PCG.

  11. #11
    Join Date
    Apr 2006
    Location
    Columbus, Ohio
    Posts
    1,229
    Post Likes
    Thread Starter
    Quote Originally Posted by The Reaper View Post
    Is this an AAON unit? It sounds like something i've done in the past with a PCG.
    Yes it sure is a Aaon unit. I assume the suction pressure reset for dehumidification gave it away? Personally I have never done it this way but the equipment supplier and the engineer claim it works really good for getting the coil really cold but prevent freezing by assuring the suction pressure is kept above freezing.

    So how did your Aaon system turn out? Anything Programming wise that I should consider?


    Sent from my iPhone using Tapatalk
    J. King

  12. #12
    Join Date
    Dec 2007
    Location
    Connecticut
    Posts
    1,162
    Post Likes
    Quote Originally Posted by apprentice3 View Post
    Yes it sure is a Aaon unit. I assume the suction pressure reset for dehumidification gave it away? Personally I have never done it this way but the equipment supplier and the engineer claim it works really good for getting the coil really cold but prevent freezing by assuring the suction pressure is kept above freezing.

    So how did your Aaon system turn out? Anything Programming wise that I should consider?


    Sent from my iPhone using Tapatalk
    The system works quite well. The one thing to remember is when you are comfort cooling, make the minimum digital scroll signal 50%. Every time you stage up, send the signal back to 50% and allow it to modulate up. When in dehumidification, make the minimum scroll signal 70%. Control for 120 psi suction in dehumidification and enable the hot gas reheat to maintain minimum space temp. The suction pressure transducers are 0-500 psi and 0-5vdc if my memory serves me.

  13. #13
    Join Date
    Apr 2006
    Location
    Columbus, Ohio
    Posts
    1,229
    Post Likes
    Thread Starter
    Quote Originally Posted by The Reaper View Post
    The system works quite well. The one thing to remember is when you are comfort cooling, make the minimum digital scroll signal 50%. Every time you stage up, send the signal back to 50% and allow it to modulate up. When in dehumidification, make the minimum scroll signal 70%. Control for 120 psi suction in dehumidification and enable the hot gas reheat to maintain minimum space temp. The suction pressure transducers are 0-500 psi and 0-5vdc if my memory serves me.
    Thanks for the reply. I will keep the minimum percentages in mind. The sequence called for a minimum of 20% which I already have in the logic, but what can I tell the engineer the reason is for the higher minimum? Another thing I was thinking about in regards to the suction pressure is, since the PID for the suction pressure loop is direct acting. The suction pressure drops which in turn reduces the compressor capacity. There are certain abnormal events like low airflow, low charge, etc. that can cause the suction pressure to run at lets say 100 psi. This would in turn keep the compressor running continuously at minimum capacity. Do you incorporate logic that states if the suction pressure is below X pressure for X amount of time, then turn off the compressor on a low suction pressure fault?
    J. King

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Contracting Business
HPAC Engineering
EC&M
CONTRACTOR