Step 7 Pid Control 313c

emtim

Member
Join Date
Oct 2006
Location
Birmingham
Posts
6
Hi, I would appreciate some advice on PID control with a S7 313C PLC.
I am thinking about using the SFB 42 (STEP CONTROL) with multiple instance DB's to contol the temperature of 16 heater units. I will use digital outputs to control (via burst firing- zero voltage switching)the 16 seperate single phase thyritor units, which in turn supply the heater coils. Thermocouples being used for feedback.
My questions are:
1. Can anyone give me some tips on setting upthe PID block?
2. Has anyone had experience of problems when using multiple PID blocks at the same time (temp accuracy not too critical)
3 Any other tips... like am i on the right track?

Cheers
Tim
 
You will have to be extremely careful with the way you call 16 pids in this little processor - you will push the cycle time up through the roof , and get very close on space . I have pushed a 315 processor up to 120ms running 19 FB41's , and on a steam heated machine this didn't have an effect on temperature control . I called these pids in a 100ms interrupt - yes , I know that it isn't the right thing to do , but in the middle of the jungle , with no chance of swapping the processor , we do what we have to do .

I am reading this that you need 16 pids , not that you just have 16 heaters . If you want to common up some of these heaters , take a look at the Eurotherm 7200S controller which can handle up to 90A for about £600 and 160A for £1000 ish . these controllers accept an analogue input for control , and the smaller units that might suit your application are surprising affordable .
perhaps you can post a bit more information ?
 
If you want to avoid cycle time exceeding: just make the 16 calls in 16 different scan cycles. you can trigger the fist call each 100 ms (or 1s) and then each following cycle the next one.
 
You can certanly call in a timed interupt , or in the case of "my" block (encapsulated to make interface easy) I do this using a counter and a 0.1second pulse - this doesn't really reduce scan time though , you can increase sample time on the block which may help a bit (does FB42 allow that?) , and you may not loose too much control by extending this a bit .
 
Thanks for help, certainly given me some ideas,
we already have the heater units, thermoccouples on site and have a spare 313C on shelf. Is a revamp of older machine, using older eurotherm model 451 thyristor units (max cycles 16on16off, 15-28V 6ma control logic) and J type thermocouples.
The cpu will only be used to control heaters, monitor faults (16DI) and communicate with HMI, although we may want to set up profibus comms to Main line control at later stage.
Q. Am still wondering wether to use step control CONT_S or use CONT_C with the pulse generator- any thoughts?
Q. Also, has anyone tried "PID self tuner" is this any good?

Cheers
 
I like a challenge , and whilst nowhere near as proficient as some here , I like to tune my loops from first principals , determining initial settings by maths , then by watching the process . Loop tuning software is normally hugely expensive - Expertune has a good repuation , but would not be worthwhile for a low volume user . I reckon on tuning maybe 150-200 temperature loops a year , and I can't really justify it - though maybe if I had to tune twitchier loops , I might fund it worthwhile .
What the tuning software does help you with is determining valve and other faults , which an be difficult if you don't have too much experience of a particular heating medium .

Ron posted a nice simple way of converting an analogue CV to a time dependent digital output .
 
Hello emtim;

For your last questions:

We have done two-step pulsed control of 25 heating elements in a plastic sealer machine on a CPU313C, a couple of years ago. To avoid the memory limit issues (32K work memory on the 313C), we generated a multi-instance DB for all IDBs for SFB41 and SFB43; this avoided inserting the code for the SFBs more than once in the project. We called the SFBs from OB35 at 100ms. if I remember well.

Here are some thougths from Siemens on the subject:

TechFunctions.jpg


We have used the PID self tuner on more delicate loops, on other projects, but not in that particular one. We found thermistor heationg to be a very slow process and we found adequate tuning without it in our project.

Hope this helps,
Daniel Chartier
 
[/QUOTE]
Ron posted a nice simple way of converting an analogue CV to a time dependent digital output .[/QUOTE]


10BaseT.

Where did Ron post this?

And why would you make your own PID when there are several in the standard Lb?

Why as in, I would like to know more about you motivation.

I have tuned loops for years "by ear" and would like to learn the math based method. I am sure this is a long list of google hits on the subject.
 

Similar Topics

Hi All I am experimenting with a PID function (Step7), I want a pressure transducer to control an actuator to maintain a gas pressure in a tank...
Replies
0
Views
4,843
Is it Gain or Proportional band? The HMI shows it as Proportional Band and the tag name is Gain???
Replies
3
Views
2,165
hello , pid of moteur DC with step 7, i'need your help please , give me some information about this project
Replies
1
Views
1,125
How can I get the curret "t" in SCL dt=tnow-tprevious I dont know how to get "tnow". I am not sure should it be in s(seconds) or miliseconds. I...
Replies
4
Views
2,101
I'm in the process of converting over a temperature loop from Step 7 to Portal. The old Step 7 program uses FB58 TCONT_CP for the PID block. In...
Replies
0
Views
4,316
Back
Top Bottom