# Accuracy and S7-200 or 300, was S7-200 PLCs and MicroWin32

A

#### Andrew Chiang

There are a lot of good information that I picked up looking at the discussion on S7-200. I would like to know in term of the accuracy of the system to measure temperature of water between 0 degC to 40 degC, such as how much is the A/D bit and what kind of temperature sensor it can take. What good is a PLC if all the data are inaccurate ? can anyone address these issues on a S7-200 or S7-300 ?

Michael Griffin wrote:

> At 02:37 29/04/00 +0200, roger Irwin wrote:
> <clip>
> >> - Removable terminal blocks (except on the lowest end CPU).
> >
> >221 is the lowest, but also the 222 (small but expandable with modules)
> >and some modules do not have this facility.
> <clip>
> Actually, they have added removable terminal blocks on the CPU and
> I/O I have used, but they are not very good ones. They are very hard to
> remove. I was able to pull out the terminal blocks from the I/O modules, but
> I gave up trying with a 224 CPU because I was afraid I would damage it. I
> think Siemens needs to try this again.
>
> >> There is no point in describing what is different about the new
> >> programming software; very little is the same as the old version. For
> >> example, you move between subroutines by clicking on tabs instead of by
> >> scrolling down the screen.
> >
> >This is what I meant by pretty! I would point out that I am using 3.0.2, not
> >4, but I do not believe 4 has that many differences (but maybe some if the
> >bugs have been fixed).
>
> Sorry, the '4' was my mistake from poor typing. I'm using version 3,
> which is the latest. I understand there is a version 3.2 coming out soon.
>
> >
> >- Subs and Ints may not be given symbolic names, you must always call 'n'
> >not call <name>
>
> I believe I'm using the same version that you are, and I can give
> subroutines symbolic names and call them by that name (I haven't had any
> need yet for interupt routines, but they may be the same). If I recall
> correctly, you select the subroutine from the tree diagram on the left.
...<remainder of long post clipped>

M

#### Michael Griffin

The resolution of the analogue modules for the S7-200 is 12 bits. The accuracy depends upon the input range used. The spec sheets for these
modules (and also for S7-300) are available for free as PDF files on Siemens' web site.

A variety of instruments can be used to measure temperature, the best one depends upon the details of your application. Most signal
conditioners can convert the signal to one or more of the standard ranges accepted by the analogue input modules.

**********************
Michael Griffin
[email protected]
**********************

D

#### Doug McQueen ESI Electric Supply Inc.

The S7200, powerful low-end plc. Its one of the best that you can buy. Just like any low-end plc, the analog module's can also be low-end. Now I am speaking for all brands here, think of it this way. If you buy a 6 or 8pt A/D and you spend $750.00, most likely you will have a good high-end performing analog module. Its just the way is, the specs will tell you. When spend$150.00 you get a couple of pt's no cold/junction etc. The specs will tell you. Now, another idea for good steady acuracy is to use a digital temp controller with a rs232 or 485 com. then, stuff those value's into V whatever and do your number crunching/comparing etc. Benefits are awesome, scan time is fast the plc won't chase the process etc etc etc. The temp controller with full
PID and fuzzy logic will be acurate and so will the plc. Remember, all of the engineering will have been done for you in the temp controller. This is just something to think about, have a grand day.

A

#### Andrew Chiang

Thank you for your reply. I would like to measure water temperature of up to +-0.01 deg C (in the range of 0degC to 40 degC). So is 12 bit or S7-300 good enough ? and also are those temperature sensors for S7-200 or S7-300 (usually PT100, RTD) good enough for such measurement ? What is the best accuracy the S7-200 or 300 can give me if I want to measure water temperature in the range
of 0 degc to 40 deg c ?

D

#### D.C. Pittendrigh

Hi All

One thing about this list is there are those who are prepared to provide information and share ideas, and there are those who aren't even prepared to think, not for 1 second, not for the simplest first principles really dumb to go through life depending on others to answer all the questions. Be prepared to learn, teach yourself to think by trying at first to apply your
mind for at least 10 minutes every day.

12 bit analogs have 8191 steps of interpolation, some PT's give full range at 200 degrees, some at 100 degrees, worst case 200, you get a resolution of 200/8191=.024 degrees, and guess what at 100 degrees............... exactly 1/2 of that.

Cheers
Donald Pittendrigh
Getting old and grumpy now.

A

#### Andrew Chiang

First of all a 12 bit analogs have 4096 steps and not 8191 steps. Next, the total accuracy of a monitored point not only depend on the A/D of the controller but also the sensor accuracy. Did you ever check the accuracy of a PT100 in the
measuring range of 0 DegC to 40 Deg C ? So the question is still the same. I like to monitor the temperature of water to an accuracy of +-0.01 DegC in the range of 0 to 40 degC. What A/D controller and temperature sensors can I use ?
Can I use any PLC product ?

regards

D

#### Doug McQueen ESI Electric Supply Inc.

My opinion first, You will have some fun doing this. Be ready to write some code big time. Now, if you find that the analog input module is not steady enough. Another words your values seem to jump around, this can be noise related. Use the best shielded cable you can, pay close atention as to how its being routed. You know, high voltage, scr contollers etc. stay away from those. The other item to consider is the RTD transmiter, make sure its a good one. You will
need to make certain you set the dip switches correctly on the s7200 if thats what you are
using. After you get the engineering units into a register, you might want to average all of this out. This will help to smooth out the numbers, and then convert to floating point values(real). If you find that the numbers are still un-steady, well all I can say is welcome to more creative code writing and take advantage of the siemens support group, they are excellent. And you will find they do have great ideas. Now, here is a scary one. I took an off the shelf a/d converter and sent this into the highspeed counter on a 214 once. Result, steady and perfect and @8 bit
res. I know. Now, you can get these from a few different companies. Din mount type, I used a Idec converter that is intended to work with the Idec micro3/3c controller. I know I am not providing that answer that you are looking for,
just remember. Its a rough road when you want a low-end plc to provide big plc results. I have been there. good luck

M

#### Michael Griffin

I can't recommend the best sort of temperature sensor for your application, but let's look at a few numbers here. You want to measure a
temperature within +/- 0.01 C over a range of 0 - 40C. This works out to an accuracy of +/- 0.025 percent over the range of interest.

Before you start to worry about what the A/D converter in the PLC can do, shouldn't you maybe try to find out how you are going to measure
your process to within that accuracy? I don't have much involvement with process control type applications, but I have a feeling that your sensor and signal conditioner are going to be more of a problem than the PLC. Resolution is one thing, accuracy is quite another thing altogether.

I think you are starting at this problem from the wrong end. When you figure out just what degree of accuracy you can expect from your temperature sensor, you may find out that the A/D converter in the PLC is the least of your problems.

**********************
Michael Griffin
[email protected]
**********************

J

#### Johan Bengtsson

This is the general formula:

12 bits gives you 2^12=4096 different values. These are probably used in a way that gives you the numbers 0-4000 inside the PLC and that the value can change with a value of 1. If this is the
your range is spread over 4000 different values (ok if you start counting you will get 4001 - if you want to discuss that contact me off list, it is out of topic)

Ok, you want to measure the range 0-40 degC. Can you find a transmitter that actually have that range or do you need a somewhat bigger range? Suppose your transmitter uses 0-40 degC.
This is a range of 40 degC, spread out over 4000 values = 40/4000 = 0.01 degC/value. You will most certanly have an error that is something in percent of the range +- one bit, that means your
resolution is 0.01 degC but you may have a total error somewhere in the range of 0.02 degC or worse. I do not know about the exact errors accepted on that particular PLC and input card, someone else have to answer that.

As an additional example: If your transmitter measures -10 to 60 degC you have a range of 70 degC to spread out over 4000 values = 70/4000 = 0.0175 degC/value.

/Johan Bengtsson

----------------------------------------
Box 252, S-281 23 H{ssleholm SWEDEN
Tel: +46 451 49 460, Fax: +46 451 89 833
E-mail: [email protected]
Internet: http://www.pol.se/
----------------------------------------

T

#### (TECO) David Bergeron

Think a little longer. 12 bits provides 2^12 = 4096 steps resolution.

David Bergeron, P.E.
TECO
504-833-6381
www.thompson-equipment.com

B

#### Bruce Durdle

A point to watch with dedicated thermocouple or RTD input cards ...

These may have a fixed measurement range corresponding to the largest acceptable signal input. If you then specify a smaller range, resolution remains set by the maximum range.

So if the card has an input settable up to -100 -> 1000 deg C, and is 12-bit, the best resolution you will get is 1100/4096 = 0.27 deg. Even if
you specify a range of 0->100 degC, the attainable resolution is still 0.27 degC.

However, this is still a lot better than the specified accuracy of the RTD/thermocouple, and there is probably at least 2 deg difference between the temperature at the sensor element and the temperature in the bulk fluid .....

Cheers,

Bruce.

D

#### Donald Pittendrigh

Hi All

My apologies for adding the extra bit (I mean on the 8191 steps), I did it mentally and as it is not really the point I was trying to make, did not
accord it the significance it probably deserves in the eyes of the original author.

> Thanks for the answer. It would be nice to hear a good and sensible answer but

This is the real point, the reader dont get misled if he knows how to think..... If he dont know how to think, better he learn how to think, or move into a non-engineering environment. Control system engineering cannot be based on discussion of ideas on the Internet, how can you trust someone you have never seen, whose reputation you don't know, may have blown up a
nuclear power station yesterday with a calculation just like the one you have asked him to do for you today.

The automation list is one of the richest sources of international ideas that I have come across, so many good and helpful people, but the things we
discuss are ideas, concepts, if you like them, go and research them, make them your own, but don't make decisions about buying a PLC or using a PT100
or a substitute device based on opinion on the Internet.

> First of all a 12 bit analogs have 4096 steps and not 8191 steps. Next, the
> total accuracy of a monitored point not only depend on the A/D of the controller
> but also the sensor accuracy. Did you ever check the accuracy of a PT100 in the
> measuring range of 0 DegC to 40 Deg C ? So the question is still the same.

The accuracy of the PT100 is not the question at all, the resistance of the PT100, after reducing terms to practical values is :

Rt = Ro(1+xT)

Rt is the resistancce of the device
Ro is the resistance at 0 degrees centigrade
x which should really be alpha, is the temp coefficient.

Sorry for the subscripts but in HTML the list server will throw it out.

Now where is the inaccuracy, the only other thing involved here is ohms law to turn the resistance into current. There are obviously some installation related factors such as noise and cable impedance etc. which play a part, but there is still no error from the PT100. As regards the temperature range, due to the nature of x for various different metals, I would say it should be good to use Platinum copper or tungsten RTD for this application, Nickel is too non-linear. I would however say as well that even though
Nickel is non-linear it is not inaccurate, if you want to apply the above formula to your readings, the accuracy is reduced to the capability of your
A/D transducer.

> like to monitor the temperature of water to an accuracy of +-0.01 DegC in the
> range of 0 to 40 degC. What A/D controller and temperature sensors can I use ?
> Can I use any PLC product ?

The facts of the matter are simple, the 0 - 40 range in question here is a subset of the range of the PLC card, which is 0 - 20 Ma or 0 - 10 v, now in the 20Ma case the (and thanks for the correction) steps in the measurement are 20/4096 = .0049 Ma. Now as far as I know, you cannot connect a PT100 directly to an S7200, which after all is the PLC under discussion and this means some type of transducer box, the success or failure of the whole initiative depends on this black box, if it has an appropriate range then
the steps of .0049Ma are of no concern. Now here's the rub, if 0.0049 Ma represent 0.01C then the steps don't matter, now if you want to know what this means you must extrapolate the relationship to find out what the range in temperature from 0 to 20 would be based on the premise of 0.0049 : 0.01, and what do you know it gives you a range of 0 - 20Ma = 0 to 40.8 degrees.
In other words you have my permission to do it, go ahead have fun but...... now what about the accuracy of that transducer hmmmmm........

Regards
Donald Pittendrigh

M

#### Michael Griffin

You are asking for a simple answer to a question which doesn't have one when you are asking for this degree of accuracy. So I'll give you lots
of data.

The Siemens data sheet (PDF file on their web site) for the EM231, EM232, and EM235 modules have an explanation on accuracy and repeatability
which is worth reading regardless of which PLC you end up buying.

To summarise it:
- No linearisation or filtering is provided.
- "The repeatability specification defines the limits within which 99% of the readings will fall."
- "The mean accuracy specification describes the average value of the error (the difference between the average value of individual readings and the exact value of the actual analogue input signal)".

I won't repeat the entire table (their are a large number of possible ranges), but I'll give a couple of examples.
For the EM231, on the 0-10V or 0-20ma scales, repeatability is 0.075%, and mean accuracy is 0.01%

If you use an EM235 on the 0-50mV or +/- 25mV scale, then repeatability stays the same (0.075%), but accuracy declines to +/- 0.25%

There are some addition caveats to the above numbers. I will quote directly from the spec sheet, as well as add some of my own comments.
- "Measurements made after the selected input range has been calibrated." (These cards allow you to calibrate them directly.)
- "The offset error in the signal near zero analogue input is not corrected, and is not included in the accuracy specifications."
- "There is a channel-to-channel carryover conversion error, due to the finite settling time of the analogue multiplexer. The maximum carryover error is 0.1% of the difference between channels." (Most analogue cards actually have only one A/D converter, which is multiplexed between channels - this is true for most data aquisition boards which install in PCs too.)
- "Mean accuracy includes effects of non-linearity and drift from 0 to 55 degrees C."

There are conflicting input resolution figures given. The summary table shows the data as being left justified (i.e. the 12 bits are shifted
left in the word). It gives the data as being -32000 to +32000 for bipolar data (12 bits shifted left by 4 bits), and 0 to 32000 for unipolar data (12 bits shifted left by 3 bits).

However, 12 bits in the stated format would seem to imply +/- 32752 (in increments of 16) for bipolar data, and 0 to 32760 (in increments of 8)
for unipolar data. Where the extra 1504 counts (actually 94 increments) went to in the one case, and 760 counts (95 increments) in the other case, I do not know.

Leaving aside the anomolies in the analogue data representation, we can see the following problems.
- The *mean* accuracy specification is just good enough on certain ranges. However, this requires you to average a number of readings. The repeatability limitations mean you cannot take just one reading.
- The accuracy will be affected by the readings on adjacent channels due to carry over from these channels.
- The accuracy depends upon the input range.
- The accuracy will not be as good for readings near the zero point.
- Your signal conditioner must be able to scale 0 - 40 C to the actual input range of your analogue card (e.g. 0 - 10V or 0 - 20ma).

If you examine analogue cards on other brands of PLCs, look for specifications which are as detailed as the above. Many spec sheets simply
give you a resolution figure. The assumption often is that if you need something extremely accurate, then a PLC is the wrong instrument for the job.

However, the above may not be that important, because getting a signal to your PLC which is accurate to within that degree will be quite a
challenge. You will need to worry about the sensor's relationship with the medium you are measuring, the actual sensor, the signal conditioning, and transmitting the signal back to the PLC.

If you can get a signal back to the terminals on your PLC which is within 0.01% of the actual temperture of what you are measuring over the
full range, then you will be doing a lot better than what I see many other people able to accomplish.

**********************
Michael Griffin
[email protected]
**********************

J

#### Johan Bengtsson

< clip>

>The accuracy of the PT100 is not the question at all, the resistance of the
>PT100, after reducing terms to practical values is :
>
>Rt = Ro(1+xT)
>
>Rt is the resistancce of the device
>Ro is the resistance at 0 degrees centigrade
>x which should really be alpha, is the temp coefficient.
>
<clip>
>
> Now as far as I know, you cannot connect a PT100
>directly to an S7200, which after all is the PLC under discussion and this
>means some type of transducer box, the success or failure of the whole
>initiative depends on this black box,

That depends on how you buy the temperature sensor. You can buy it as a resistor (the sensor itself is, as you states a resistor) or as a complete set with a resistor and this black box built together as one unit giving 4-20mA or 0-10V sometimes complete with linearisation of the signal. And besides, even Ro have a tolerance, it might not be that wrong, but it still have a tolerance all the same.

> if it has an appropriate range then
>the steps of .0049Ma are of no concern. Now here's the rub, if 0.0049 Ma
>represent 0.01C then the steps don't matter, now if you want to know what
>this means you must extrapolate the relationship to find out what the range
>in temperature from 0 to 20 would be based on the premise of 0.0049 : 0.01,
>and what do you know it gives you a range of 0 - 20Ma = 0 to 40.8 degrees.
>In other words you have my permission to do it, go ahead have fun but......
>now what about the accuracy of that transducer hmmmmm........

That is not true, I even forgot a part of it in my first response (the fact that the input circuit measure 0-20mA and you feed it with 4-20mA). You will probably get the value 4000 when you feed it with 20mA indicating that the actual range is 0-20.48mA. However you get a useful
range of 800-4000, that is 3200 values to tell the
temperature in the range 0-40degC. Since the value is an integer increasing with 1 every time you have a resolution of 40/3200 = 0.0125 degC. This resolution is simply not good enough for the desired accuracy and that means it doesn't help if the "black box" is accurate to 0.01% of the range. It wouldn't be enough to have 0.01 degC resolution since the A/D introduces some errors too, often in the range of one bit.

I am sorry for missing the 4- part in my first response.

/Johan Bengtsson

----------------------------------------
Box 252, S-281 23 H{ssleholm SWEDEN
Tel: +46 451 49 460, Fax: +46 451 89 833
E-mail: [email protected]
Internet: http://www.pol.se/
----------------------------------------

J

#### Johan Bengtsson

Of course the accuracy is depending on all parts of the system, To provide an absolutely correct answer I think some more details have to be answered:

1. Most important: What do you need the temperature for? is it for controlling the temperature or just for monitoring 0.01 degC is a very low temperature difference and you will
probably not have the same temperature everywhere in the water. Definitely not so if you want to control the temperature (by heating or cooling at some place and measuring at some other place, and how could you do this in another way?)
2. If you have any sort of chance that the temperature actually is the same in all the water it is most certainly changing very slowly. At very slow natural change you can add tons of low pass filter at the measurement without killing the already dead signal and noise won't be a problem if it is symmetrical (in some cases noise can affect a signal in asymetrical way - very ugly when that happens). What is the speed requested?
3. Have you found a temperature transmitter with a reasonable range and accuracy, or is that a part of the question?

12 bit A/D is at it's limit of handling it anyway and cannot be used (see my other reply). I would go for 16 bits.

One other possibility (if other solutions are ruled out and the budget allows it) is to have more than one sensor. I know this sounds crazy but wait a second before you start arguing:
If you have one "low accuracy" sensor measuring 0-40 degC to provide the PLC (or whatever) with an idea of where the temperature is and several "high accuracy" sensors each covering a subset of the entire range. Those sensors need to overlap and when switching from one sensor to the next you
should do so gradually. This will be expensive, hard to program and hard to calibrate. I would probably still go for 16 bit A/D even if it would be less necesary to do with this setup. You should try to find other solutions first and if it comes to this you should ask yourself if it is worth it. If you have more questions about how this is to be programmed we can take them later if this idea seems reasonable.

/Johan Bengtsson

----------------------------------------
Box 252, S-281 23 H{ssleholm SWEDEN
Tel: +46 451 49 460, Fax: +46 451 89 833
E-mail: [email protected]
Internet: http://www.pol.se/
----------------------------------------

J

#### Johan Bengtsson

Of course the accuracy is depending on all parts of the system, To provide an absolutely correct answer I think some more details have to be answered:

1. Most important: What do you need the temperature for? is it for controlling the temperature or just for monitoring 0.01 degC is a very low temperature difference and you will
probably not have the same temperature everywhere in the water. Definitely not so if you want to control the temperature (by heating or cooling at some place and measuring at some other place, and how could you do this in another way?)

2. If you have any sort of chance that the temperature actually is the same in all the water it is most certanly changing very slowly. At very slow natural change you can add tons of low pass filter at the measurement without killing the already dead signal and noise won't be a problem
if it is symmetrical (in some cases noice can affect a signal in asymetrical way - very ugly when that happens). What is the speed requested?

3. Have you found a temperature transmitter with a reasonable range and accuracy, or is that a part of the question?

12 bit A/D is at it's limit of handling it anyway and cannot be used (see my other reply). I would go for 16 bits.

One other possibility (if other solutions are ruled out and the budget allows it) is to have more than one sensor. I know this sounds crazy but wait a second before you start arguing:
If you have one "low accuracy" sensor measuring 0-40 degC to provide the PLC (or whatever) with an idea of where the temperature is and several "high accuracy" sensors each covering a subset of the entire range. Those sensors need to overlap and when switching from one sensor to the next you
should do so gradually. This will be expensive, hard to program and hard to calibrate. I would probably still go for 16 bit A/D even if it would be less necesary to do with this setup. You should try to find other solutions first and if it comes to this you should ask yourself if it is worth it. If you have more questions about how this is to be programmed we can take them later if this idea seems reasonable.

/Johan Bengtsson

----------------------------------------
Box 252, S-281 23 H{ssleholm SWEDEN
Tel: +46 451 49 460, Fax: +46 451 89 833
E-mail: [email protected]
Internet: http://www.pol.se/
----------------------------------------

A

#### Andrew Chiang

There are two things that I need this accuracy.

1. Clean Room temperature of some wafer Fab or Photomask have ask for +-0.1 degC and same to the process water temperature that they are using.

2. Need it for energy efficiency work, where we guarantee the monitoring of delta T (Chilled water supply - Chilled water return) is less than 1 % error (out of 10 DegF for 2 probes and therefore one the accuracy for a probe would be +-0.05 degF)

I would be happy if we can get it to +-0.05 degC or less, and so I ask for +-0.01 DegC, where murphy will take away the accuracy.

> 2. If you have any sort of chance that the temperature
> actually is the same in all the water it is most certanly
> changing very slowly. At very slow natural change you can
> add tons of low pass filter at the measurement without
> killing the already dead signal and noise won't be a problem
> if it is symmetrical (in some cases noice can affect a signal
> in asymetrical way - very ugly when that happens). What is the
> speed requested?

Agree. At least at the location of my sensor, the accuracy is maintain. Same as in Clean Room, the temperature inside the whole room will vary so much.

> 3. Have you found a temperature transmitter with a reasonable
> range and accuracy, or is that a part of the question?

No, trasmitter usually add to losses and inaccuracy. We prefer to use high ohms thermistor, 10K and 30K where it perform best at its measurement temperature (5~15 DegC and 20~35 DegC). The drift is unbelievable negligible. Non linearity - Steinhart equation. But it is
expensive.

> 12 bit A/D is at it's limit of handling it anyway and cannot
> be used (see my other reply). I would go for 16 bits.

Agree. 24 bit is even better. We use to use HP data acqusition stuff but too expensive. Want to look for alternative that have the signal
conditional to take high ohms thermistor.

Unfortunately, most plant wanted to use PLC as it is almost the standard and is good for control. But the question is how well can we trust the data ? Here in my country, temperature sensor from
PLC supplier has a specs of +-0.5 degC or worst and they wanted to control a Clean room specs of +-0.5 degC or process water of +- 0.1 degC and how can that be done ? But yet they insist the use of PLC .....

J

#### Johan Bengtsson

>There are two things that I need this accuracy.
>
>1. Clean Room temperature of some wafer Fab or Photomask have
>+-0.1 degC and same to the process water temperature that they
>are using.
>
>2. Need it for energy efficiency work, where we guarantee the
>monitoring of delta T (Chilled water supply - Chilled water return) is
>less than 1 % error (out of 10 DegF for 2 probes and therefore one
>the accuracy for a probe would be +-0.05 degF)
>
>I would be happy if we can get it to +-0.05 degC or less, and so I
>ask for +-0.01 DegC, where murphy will take away the accuracy.

Where is a problem without Murphy? <grin>

>>
>> 2. If you have any sort of chance that the temperature
>> actually is the same in all the water it is most certanly
>> changing very slowly. At very slow natural change you can
>> add tons of low pass filter at the measurement without
>> killing the already dead signal and noise won't be a problem
>> if it is symmetrical (in some cases noice can affect a signal
>> in asymetrical way - very ugly when that happens). What is the
>> speed requested?
>
>Agree. At least at the location of my sensor, the accuracy is
>maintain. Same as in Clean Room, the temperature inside the
>whole room will vary so much.

I don't see the reason to require that accuracy in the room since you only catch the temerature at the sensor anyway. I don't either see the reason you need such a big range for this measurement, a smaller range could be the solution here

Same for the water - do you really need the range?

>> 3. Have you found a temperature transmitter with a reasonable
>> range and accuracy, or is that a part of the question?
>
>No, trasmitter usually add to losses and inaccuracy. We prefer to
>use high ohms thermistor, 10K and 30K where it perform best at its
>measurement temperature (5~15 DegC and 20~35 DegC). The drift
>is unbelievable negligible. Non linearity - Steinhart equation. But it is
>expensive.
>
>> 12 bit A/D is at it's limit of handling it anyway and cannot
>> be used (see my other reply). I would go for 16 bits.
>
>Agree. 24 bit is even better. We use to use HP data acqusition stuff
>but too expensive. Want to look for alternative that have the signal
>conditional to take high ohms thermistor.

You will not gain much by those extra 8 bits, only a higher cost. 16 bits is 65536 different values if you can use the entire range, quite enough for your needs.

>Unfortunately, most plant wanted to use PLC as it is almost the
>standard and is good for control. But the question is how well can
>we trust the data ? Here in my country, temperature sensor from
>PLC supplier has a specs of +-0.5 degC or worst and they wanted
>to control a Clean room specs of +-0.5 degC or process water of +-
>0.1 degC and how can that be done ? But yet they insist the use of
>PLC .....

I think you could go further with calibration and correction tables. If the transmitter always behaves the same for the same temperature but two transmitters are different, then it is "only"
a matter of making a correction table and place it in the PLC. (This table have to be redone if the transmitter is replaced) But if one transmitter gives different values for the same
temperature at different times (for any reason) then this method is useless unless you find a more accurate transmitter.

/Johan Bengtsson

----------------------------------------
Box 252, S-281 23 H{ssleholm SWEDEN
Tel: +46 451 49 460, Fax: +46 451 89 833
E-mail: [email protected]
Internet: http://www.pol.se/
----------------------------------------

W

#### William L. Mostia, Jr

There seems to be a bit of confusion in this thread regarding accuracy and resolution. In measuring a process variable(such as
temperature), you must first look at the desired accuracy and then the accuracy of the elements of the system that are involved in the
measurement including the measurement point itself and the process you are trying to measure.

In this case of measuring the temperature of the water, if you are using a thermocouple, the elements you must typically consider are the accuracy of the thermocouple and its installation, the extension wire, and the receiving element(PLC card in this case). If you have a transducer in the circuit, it must also be considered. If you are using a RTD, then you must consider the RTD and its installation, the number of wires of the RTD, wire impedance, and the receiving element. If you are using a thermistor, you must consider the thermistor and its installation, lead impedance, and its
receiving element. If you are using a transmitter, then the accuracy of the transmitter
including influence errors, the primary element, and the receiving element must be considered. It should be noted that all elements involved in the measurement must be applied within their
specifications and allowances for any influence errors must be applied.

Now that you have done this, you can visualize an error envelope based on combination of the error specifications of the measurement elements involved and the system operating parameters. This is what is used to design the measurement
system. Now within this envelope, your actual measurement curve should lie and at the center of the envelope should be the curve of the true measurement values. Where these curves do not intersect or match up represents the inaccuracy of your measurement.

Now in regards to resolution, resolution is not accuracy but rather how many pieces or segments you resolve the above actual measurement curve into. In the discussion using 12 bits, the
resolution is 4095 (2^12-1) counts or segments. For a range of 0-40 degrees C, the resolution is 40/4095 or 0.009768 degrees/count.

There appears to be some people who state the resolution is 40/4096 (2^12) because there are 4096 "values", ie. 0 plus 4095 counts. This is incorrect. The resolution divides the measurement
space into segments represented by counts with each count representing an amount of the measurement. You can visualize this as dividing the above measurement curve into resolution
segments of which in this case there are 4095 counts or segments. For a simple example of a 3 bit(111) resolution and a range of 0-14, there are seven counts or segments:

0(000) = 0
1(001) = 2
2(010) = 4
3(011) = 6
4(100) = 8
5(101) = 10
6(110) = 12
7(111) = 14

As you can see the resolution is 14/(2^3-1) ie. 14/7 or 2 and not 14/8 or 1.75. The generalized formula for resolution is

Span/((2^bit resolution) -1)

Resolution is in fact an error to be "added" to the overall system error. If the A/D rounds off at 1/2 count, the maximum additional error due to resolution is 1/2 count. If it always rounds up or down, then the error is 1 count.

The overall error of this type of system is generally estimated using RSS(Square Root of the Sum of the Squares) methodology. For a simple
case of +/-0.01 deg. C error of reading for the measuring part(including the PLC card sans the resolution error) then the Total Probable Error(TPE) due to the measurement and resolution is
estimated as:

TPE in Degrees = SqRt ( (0.01)^2 + (0.009768/2)^2) )
= +/-0.01113 deg. C

As you can see, the resolution error contribution is 0.00113 degree C or ~10% of the TPE.

For a 15 bit A/D, the resolution is 40/32767 ie, (2^15-1) or 0.001221 deg. per count:

TPE in Degrees = SqRt ( (0.01)^2 + (0.001221/2)^2) )
= +/-0.01001861 deg. C

or an error contribution for the resolution of 0.00001861 or ~0.186% of the TPE.

For a required measurement TPE of +/-0.01 deg. C using a 12 bit resolution(with 1/2 bit error):

TPE^2 = (Measurement accuracy)^2 + (resolution accuracy)^2

or

(Measurement accuracy)^2 = TPE^2 - (resolution accuracy)^2

SqRt (Measurement accuracy)^2 = SqRt ( TPE^2 - (resolution accuracy)^2)

or

Measurement accuracy = SqRt(0.01^2 - (0.009768/2)^2)
= +/-0.008726 deg C

Now the required measurement accuracy of +/-0.008726 degrees C out of 40 degrees C is +/-0.0218% which is beyond the ability of the typical process transmitter(~0.05-0.1% of calibrated span, nominal) not including influence errors or the PLC card error. I doubt a direct standard thermocouple or RTD connected to a PLC
card will work either for that span. I would be surprised if a thermistor card was available. The result of this is that if you want to measure to that accuracy, you are going to probably have to narrow your span and use multiple sensors to get your desired accuracy. Another possibility is to use a precision thermometer and transfer the data to the PLC via a digital link. Hart makes
precision thermometer with this accuracy with a digital output. I have no experience with this device and you would also probably have to write a communication driver. Another possibility is to use a calibrated system with a lookup table with fine enough table resolution to get your accuracy but these are typically not very
feasible for process measurements(as opposed to lab measurements) and they are high maintenance systems. These calibrated type of systems work on repeatability or actually reproducibility rather than direct accuracy.

On the practical side, it seems unlikely that your temperature measurement would be representative anyway unless it was done on a small volume of water under strictly controlled conditions. Stratification, convection, uneven heating, non-uniform insulation, boundary effects, mechanical operations, etc. make it seem
unlikely that a representative measurement could be accomplished to that level of accuracy.

If you really have to, I suggest that you find a temperature measurement company that has experience with high accuracy process measurements and use them to help you come up with an acceptable measurement system. Make sure that they have experience in overall system accuracy and influence errors.

SOME OTHER ISSUES:

>The accuracy of the PT100 is not the question at all, the resistance
>of the PT100, after reducing terms to practical values is :

>Rt = Ro(1+xT)

>Rt is the resistancce of the device
>Ro is the resistance at 0 degrees centigrade
>x which should really be alpha, is the temp coefficient.

>Now where is the inaccuracy, the only other thing involved here is
>ohms law to turn the resistance into current. There are obviously
>some installation related factors such as noise and cable impedance
>etc. which play a part, but there is still no error from the PT100.

This statement is incorrect. There is no perfect errorless RTD. There is uncertainty associated with the alpha coefficient, resistance tolerance, material purity, and in the construction of the
RTD. Stability, temperature cycling, and hysteresis must also be taken into account. Some standards that define RTD accuracy are ASTM E 1137, "Specification for Industrial Platinum Resistance Thermometers" and IEC 751(now 60751), "Industrial platinum resistance thermometer sensors". As was mentioned lead length(cable impedance) compensation must also be taken in to
consideration as well as the lead wire configurations(2,3,&4 wire). You can find a good discussion in the paper "Part Five: Industrial
PRT and Errors" at http://www.its-90.com/onref.html . An example specification from a manufacturer of a PRTD per IEC 751:
200 to 850°C. is a ice point tolerance of either IEC 751 Class A (±0.15°C at 0°C) or Class B (±0.30°C) with less than 0.05°C drift (typical) after more than 250 hours at 850°C.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

> - "The repeatability specification defines the limits within
> which
>99% of the readings will fall."
> - "The mean accuracy specification describes the average
> value of
>the error (the difference between the average value of individual
>readings and the exact value of the actual analogue input signal)".

> I won't repeat the entire table (their are a large number of
>possible ranges), but I'll give a couple of examples.
> For the EM231, on the 0-10V or 0-20ma scales, repeatability
> is
>0.075%, and mean accuracy is 0.01%

I am not familiar with the Siemens EM231 module but I find that the accuracy/repeatability specification to be a bit on the strange side and certainly is not consistent with industry definition(ISA) of repeatability, ie.

Repeatability - The ability of a transducer to reproduce output readings when the same measurand value is applied to it consecutively under the same conditions, and in the same direction.

The repeatability specification is generally the combination of the readings obtained from doing the test from both directions which is really a form of reproducibility which is a specification not commonly used these days. Repeatability is generally 5-10 times better than the nominal accuracy which is reversed from the statement of the Siemens spec for the EM231.

This kind of misleading or creative specification creates the problems in the industry in understanding accuracy, how to estimate it, and how to design accurate systems.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

> There are conflicting input resolution figures given. The
> summary
>table shows the data as being left justified (i.e. the 12 bits are
>shifted left in the word). It gives the data as being -32000 to
>+32000 for bipolar data (12 bits shifted left by 4 bits), and 0 to
>32000 for unipolar data (12 bits shifted left by 3 bits).
> However, 12 bits in the stated format would seem to imply +/-
> 32752
>(in increments of 16) for bipolar data, and 0 to 32760 (in increments
>of 8) for unipolar data. Where the extra 1504 counts (actually 94
>increments)
went
>to in the one case, and 760 counts (95 increments) in the other case,
>I do not know.

I don't have a clue as to what these resolution numbers mean. Standard resolutions for PLCs are:

8 bit = 255
12 bit = 4095
15 bit = +/- 32767 (16th bit position is used to determine
polarity)
16 bit = 65535

There are a few people that use 4000 counts for 12 bits or other ranges of counts such as to provide live zero or diagnostic bits.

=================================================
====================
William(Bill) L. Mostia, Jr. PE Principal Engineer WLM Engineering Co
Independent I&E Consultant P.O. Box 1129 Kemah, TX 77565 USA
281-334-3169 E-Mail: [email protected]

These opinions are my own and are offered on the basis of Caveat
Emptor.

=================================================

D

#### D.C. Pittendrigh

Hi All

There is one thing you need, and ..... neither of them is accuracy, repeatability is the issue who cares if the PLC records 30.2 degrees instead
of 32.0, so long as the temperature recorded by your sensor always represents the same temp with the same mA feedback.

> >There are two things that I need this accuracy.

Regards
D. Pittendrigh