opnion on temperature regulation

userxyz

Member
Join Date
May 2002
Location
any
Posts
2,768
Hey,

One of my latest projects is 'Complete Temperature Management' of the factory. It all happens on WinCC and One CPU with lots of ET200 stations connected over profibus. The PC is connected on ethernet to the PLC stations. We have a scheduler where you can enter date's and time's in a scheduler calendar. It also manages weekly weekendmode and so on.

But what I want to improve is the regulation. Every zone has the same logic:

One PT100 as measurement controls several heatingmachines /zone.

Let's say we are in weekmode and we have 11,6 degrees measurement in a certain zone, the setpoint is 12 degrees; so a little compare says that the heaters may start, when temperature raises over the 12 degrees, there is an Off-Delay of 1 minute.

So all I have is a Compare and an Off-Delay,

but now I see that in some zones, the temperature raises fast, this means that u get much starts and stops, maybe I can write something like: too many starts = let heat a while instead of too many starts,

someone has a better idea ?
 
Instead of an off delay, why not use a temperature deadband? Something like:
IF Temp < setpoint - deadband THEN
HEAT:= TRUE;
ELSEIF Temp > setpoint + deadband THEN
HEAT:= FALSE;
ENDIF;

Then run a timer of around 1 hour, everytime HEAT=True, index a counter
If the counter value exceeds some value before the timer times out, then increase deadband, deadband:=deadband + 1.

Just brainstorming.
 
I like what Ken says, but the first thing that came to mind is:

Are your heaters oversized in some areas? If they are then they will cycle faster. Is there a simple, cheap , and fast way to reduce the heat they output. That would reduce your problem.
 
Combo,

Complete heat & cooling control is a complex problem, because to measure all the variables would require a way to measure the heat gains and losses from all sources, including people, machinery, and most of all, the sun and outside air temperatures.

Every room will have a different heat gain, due to its location in the building, the number of people using the room, the amount and size of heat-producing equipment in the room, the distance from the heating source, the amount of insulation in walls, ceilings, and floors, the number of windows, the amount of exposure to direct sunllight.

All these variables affect the way that a heat system works.
 
Originally posted by Combo:

but now I see that in some zones, the temperature raises fast, this means that u get much starts and stops, maybe I can write something like: too many starts = let heat a while instead of too many starts,

My two questions are:
1) How many starts in what period of time are too many?
2) What is the downside of too many starts?

Basically, are you creating a problem out of a situation that is not really a problem?

Keith
 
Hey

Tnx Ken, good idea:

I wrote this and I am testing right now with it:

REG: L #Act
>=R
FP #Mem_0
S #Vrijgave
L #Setpoint
L #deadband
+R
L #Act
<R
FP #Mem_1
R #Vrijgave


A #Vrijgave
FP #Mem_2
CU #Count1 // Aantal restarts

A M 0.7 // pulse/second
FP #Mem_3
CU #Count2 // Periode
L #Count2
L 1800 // 1800s = 30mins
>=R
FP #Mem_4
JCN LIM
L 2.000000e-001
L #Count1
ITD
DTR
*R
T #deadband
R #Count1
R #Count2
LIM: L #deadband
L 2.000000e-001
<R
JCN END
L 2.000000e-001
T #deadband
END: BE
 
Hey

Houston, we have a problem...

counter goes until 999

Maybe I should evaluate it every 15 minuts, so count until 900, en then start another counter for qwarter hours ?

What do u guys think ?
 
Simplify

I wrote it like this now:
Testing if it works:
A M 0.7
FP #Mem_3
CU #Count2 // DeelPeriode Kwart
L #Count2
L 900 // 900s = 15mins
>=R
FP #Mem_4
JCN CNT3
L 2.000000e-001
L #Count1
ITD
DTR
*R
T #deadband
R #Count2
SET
FP #Mem_5
CU #Count3
CNT3: L #Count2
L 2 // 2 = 1/2e uur
>=R
FP #Mem_6
JCN LIM
R #Count3
R #Count1
LIM: L #deadband
L 2.000000e-001
<R
JCN END
L 2.000000e-001
T #deadband
END: BE

Is u know how to simplify it or seeing dumb things, please tell me, I'm still learningthe STL language
 
Another one

A M 0.7
FP #Mem_3
JCN LOW
L 1
L #Period
+I
T #Period // Seconds Counter

LOW: L #Period
L 30 // 1800s = 30mins
>=R
FP #Mem_4
JCN LIM
L 0
T #Period // Reset Teller

L 2.000000e-001
L #Count1 // Getelde restarts
ITD
DTR
*R
T #Deadband
R #Count1

LIM: L 2.000000e-001 // Underlimit = 0,2 degrees
L #Deadband
>R
JCN END
L 2.000000e-001
T #Deadband // Calculated Deadband

END: BE

Thats what I have now, much better, thanks
 
Hehey

It works great dudes

Thanks

The Idea of using a Variable Deadband before the Reset signale is ubergreat.

Cu
 
...

I start an counter (written like a+1=a) everytime I get a clockpulse, after 3600 pulses I transfer a countervalue that counted the restarts of the heaters in that hour, that value I multiply by 0,2 degrees,
thats my deadband.

But one thing disturbing me (it works but):

It evaluates after one hour... if u get for a reason in 15 minutes 4 restarts because of a port that is open...
Then the hour after that will function with a greater deadband value..., so anything smart to optimize a lillte more ?
 

Similar Topics

I’m attempting to send a temperature from a SLC-5/02 to an EZiMarquee display. The vendor said to use a MSG instruction to send the data to the...
Replies
1
Views
81
Hi!! I'm looking for Temperature rise calculation software from Rockwell, I just download "Product selection toolbox 2022" but this software is...
Replies
1
Views
210
I have S7 1512C controler for controlling 48 PID temperature loop, the output is PWM. Please I need the best, most efficient way to write the...
Replies
13
Views
600
I am looking for temperature/humidity sensor recommendations. Would like the sensor to display temp and humidity. Need to connect to a Contrologix...
Replies
4
Views
225
I have an old Chinese Temperature PID controller XMT 8038c2kp that am able to send and receive requests via Modbus poll test center in this format...
Replies
0
Views
441
Back
Top Bottom