No announcement yet.

DL205 - Heat controller

  • Filter
  • Time
  • Show
Clear All
new posts

  • DL205 - Heat controller

    I`m kind of new to this, so I`m asking for some advice/help.
    In one of our old plants, we have a struggling heat/ventilation system, where the heat elements won`t turn on. For me it seems like the old temperature controller is broken, so for a temporary fix, my plan is to replace the microcontroller with a DL205 that I have available for the moment. I intend to replace the two temperature sensors with new 4-20mA sensors, and write a program that step by step turn on the 4 heat elements in the HVAC system.

    About system;
    The #1 temp sensor measures the delivered temp. out of the ventilation system
    The #2 temp sensor measures the temp. in the plant. (room temp)
    At a certain set point (temperature), the heat elements will be activated step by step.

    The system has 4 heat elements;
    - Step 1 2,3 kW
    - Step 2 3,8 kW
    - Step 3 9,0 kW
    - Step 4 19 kW
    There is also a crossflow heat exchanger in the system with a bypass channel. At low temperatures (#1 sensor), an actuator opens the bypass channel to prevent frost and pressure drop on the exchanger.

    I will try to write a program as follows;
    When the temperature drops under the set point, step 1 turns on for a certain time. If the temp. still is below the set point, Step 2 turns on …. and so on. As soon as the set point value is achieved, the elements turns off. It is important not to allow activation of all elements at the same time. Step 1 and 2 could be active together, but the others 1 by 1.

    I need to be able to adjust the temperature set point from ie. DV1000.
    I`m sure it`s several ways to write a program to do this, but hopefully it is someone who could point me in the right direction…
    Thanks ahead!

  • #2
    The way they designed your system is very odd. Why install 34kw of heaters when you can only ever operate 19kw at a time? And, even if it's only OK to operate 19kw, why could you not operate 1-3 (total 15.1kw) simultaneously? That would give you more steps in capacity.

    Anyway, in regards to the control design, I'd tend to modularize the system. IOW, have one module decide the percentage of total control effort (kw) to energize, then have a second module to figure out how best to do that given the kw options at hand. In this case I'd probably do a PID loop, which the 205 does quite well. You could either take the room temperature as the loop PV (process variable), or have a “cascade loop” (two loops, one, the CV output of which becomes the SP – setpoint for the second loop). In your case, you'd have one loop controlling room temp by choosing a supply air temp, and a second loop choosing a heater power CV to try to hit the supply air setpoint, but if you're new at this, I probably wouldn't start with cascaded loops. The single loop will probably work fine.

    For the second loop, there's a number of ways to resolve a CV percentage into which heaters to turn on. You could build a lookup table. Your capacity choices without ever running heaters 3 or 4 in conjunction with anything else are 2.3, 3.8, 6.1, 9.0, and 19kw. If we consider 19kw as your '100%', then those options equate to 12.1, 20, 32.1, 47.4, and 100%. So if you set up a lookup table with 101 entries, where the index is the CV%, then table[0] = 0, table[1] through table [12] = 1, table [13] through table[20] = 2, table[21] through table [47] = 3 (run 2.3 and 3.8), table[47] and higher = 4 and somewhere betweeen 47 and 100 the table entries become 8 (run 19kw). The table entry comes out as a bitword telling you which heaters to run. want to be able to turn off everything when needed, and you probably shouldn't have to hit 100% exactly to kick on the 19kw, so I'd probably alter that so the table entries from about 0-6 are all 0, and from 75-100 are all 8.

    You could also do a more sophisticated version of that based on percentage on-time but involving more math. For example, if the PID loop decides it wants 25% control effort, between your choices of 20 and 32%, you could energize the 3.8kw unit and run the 2.3 cycling with a relatively long timebase, say 5 minutes to avoid contactor wear. Then you'd run the 2.3 unit roughly 2 mintues out of every 5 which would give you 25% of 19kw on average.

    I'd also look into why units 1-3 can't run together, and also consider adding some analog capacity control, probably to the 9 or 19kw heater. Then you can ramp a lot more smoothly and hit CV percentages you could not otherwise, and may even be able to remove some of the heaters if they're no longer needed for capacity control (probably leaving a little redundancy though). Having control you can switch fast enough to be considered analog (like solid state relays) would save you from all that heroic math to convert the CV into decisions about which heaters to run.

    And, for the love of all that's holy, PLEASE don't use a DV1000! If you don't want to use an Idec HMI (brightest, most saturated, best resolution), use a C-More. If you can't do that, use a C-More Micro. If you can't use a C-More Micro, use a BCD thumbwheel! The DV1000 was a kludge 20 years ago, and now it's an anachronism besides.


    • #3
      Thanks a lot!!