Weighing Sensor for WebControl

ChubRock1

Member
I am using a WebControl unit to control the temp and humidity for a meat curing chamber and it is doing a great job of that. I was thinking it would be really nice if I could connect some weight sensors between my crossbars and the hanging meats inside the chamber so I can see the weight of each meat real time from the WebControl status page.

Can anyone recommend a small weight sensor I could use?
 
I spent a good time looking around for pressure transducers and strain gauges for weighing solid objects and never found a good option. Freescale makes very nice pressure transducers for measuring air pressure and I have used several of them with great success to measure liquid levels via a dip tube on my cai. You could use an air bladder connected to one of those to determine weight. The pressure transducers cost about $15 with shipping from digikey and output 0-5v in response to the pressure.

I even tried tearing apart a digital bathroom scale to see if I could use the strain gauges built into them, but had no luck.

Every strain gauge I could find that would work with a solid object placed on it cost like $500.
 
How much weight do you like to weight? Yahoo search showed this weight sensor for 50KG:
http://www.alibaba.com/product-gs/211034878/MLC913A_body_scale_weight_sensor.html?s=p
Its output is in mV, need to be amplified.

More fun way to do it is by having a spring load scale attached to a metal plate to form a large size capacitor. Then use this circuit to convert the position of that plate to frequency:
http://www.simplecircuitdiagram.com/2009/05/20/pulse-position-modulator-using-555-ic/

Then use WebControl frequency measurement method to determine the frequency. In PLC 3.2.14 and higher firmware, you can write PLC logic to convert the "fcounter" to weight, display that on one of the VAR value. Please note the fcounter reading may vary, the lower reading is the more accurate reading.
 
That load cell will work, if you have an operational amplifier to amplify the signal. Its output is in mV range. With operational amplifier like LM2902, you can amplifier that to 5V range. LM2902 is very easy to wire, just need two additional resistors for each channel. But the load cell itself may need to have a four resistor bridge. If you can ask that seller to provide some kind of schematics, we will help you to figure out how to wire it.
 
In PLC 3.2.14 and higher firmware, you can write PLC logic to convert the "fcounter" to weight, display that on one of the VAR value. Please note the fcounter reading may vary, the lower reading is the more accurate reading.

OK, spill the beans on fcounter. I can't find reference to this anywhere else. PLEASE tell me it'll count up to 150KHz!!
 
OK, spill the beans on fcounter. I can't find reference to this anywhere else. PLEASE tell me it'll count up to 150KHz!!
In 3.2.14 and above firmware, we have counter and fcounter. It can count up to 2MHz pulses. That is how much frequency measurement top, too. The I/O configuration screen allow user to set TTL input 1 as TTL input, pulse counter input, or frequency counter input, one of those three. "counter" and "fcounter" is added to the PLC logic allowing to be read. COUNTER can also be set to a value. FCOUNTER is read only.

COUNTER is start counting from first raising edge of the falling edge. We can not change that behavior due to processor itself. FCOUNTER can be off, if WC busy with a lot of other things- don't have time to come back stop counting. So that lower fequency reading is more accurate.
 
Thanks for the input. I only need up to about 10lbs, the key really is that it can be fairly accurate at lower weights. Are there any sensors that would be able to be wired in directly, without the amp or extra wiring? I do like the idea of using Fcounter to convert it, that way I can see the weights online directly.
 
The load cell would work, too. That will be read in by AIP, then you can use PLC logic to convert that to weight and display that in VAR, also.
 
Sorry, but not sure I follow? You noted above that the load cell I pasted would need an amplifier to work, I assume because the Output Voltage - Rated Output: 1.0946mV/V is that correct? Does that need to be 5V to work correctly?
 
If you could amplifier it to the 5V range, the noise from anything can be ignored. LM2902 can do that and pretty stable. I think in most commercial scale, they all amplify the small mV reading into larger voltage before A/D converting.
 
In 3.2.14 and above firmware, we have counter and fcounter. It can count up to 2MHz pulses.

Excellent!!!!

That is how much frequency measurement top, too.

OK, so in my case, counting output from a flux-gate magnetometer which will be between 50 and 150KHz should be well within its range.

pulse counter input, or frequency counter input
....
COUNTER is start counting from first raising edge of the falling edge.

Can you clarify that? Do you mean it starts counting from the first rising edge to the FIRST falling edge? (ie, measures the "high" time)? Or do you mean it counts each rising edge only after it sees a falling edge after it's been enabled? (ie, if the input is high when you start, it won't count that until it sees an actual low-to-high edge?)

FCOUNTER can be off, if WC busy with a lot of other things- don't have time to come back stop counting. So that lower fequency reading is more accurate.

Are you saying that the counter may have jitter? Ie, it may see a higher frequency on one pass if it's been delayed getting (say) a 1-wire reading, but the next time it would read low (because the second counting interval would be shorter)?

Does this counter constantly update? Is it gated? What's the sample time? Can we improve its stability by (for example) using a delay to permit the device to take a reading without interruption? Or somehow synchronise the sample interval with a quiet time?

What is the precision? Do you count for 1 second (and therefore the counter could be between 0 and 2,000,000)? Or for 1 millisecond and it will range only from 0-2000? I need the maximum precision I can get, counting for 1 or more seconds would be ok. If this is the case, can I use COUNTER, and clear the counter on (say) the transition of a second, then wait for (lets say) 10 seconds - again, by watching the seconds transition, and reading a value of the counter from 0 to 10*150KHz = 1,500,000 ??
 
In 3.2.14 and above firmware, we have counter and fcounter. It can count up to 2MHz pulses.

Excellent!!!!

That is how much frequency measurement top, too.

OK, so in my case, counting output from a flux-gate magnetometer which will be between 50 and 150KHz should be well within its range.

pulse counter input, or frequency counter input
....
COUNTER is start counting from first raising edge of the falling edge.

Can you clarify that? Do you mean it starts counting from the first rising edge to the FIRST falling edge? (ie, measures the "high" time)? Or do you mean it counts each rising edge only after it sees a falling edge after it's been enabled? (ie, if the input is high when you start, it won't count that until it sees an actual low-to-high edge?)

FCOUNTER can be off, if WC busy with a lot of other things- don't have time to come back stop counting. So that lower fequency reading is more accurate.

Are you saying that the counter may have jitter? Ie, it may see a higher frequency on one pass if it's been delayed getting (say) a 1-wire reading, but the next time it would read low (because the second counting interval would be shorter)?

Does this counter constantly update? Is it gated? What's the sample time? Can we improve its stability by (for example) using a delay to permit the device to take a reading without interruption? Or somehow synchronise the sample interval with a quiet time?

What is the precision? Do you count for 1 second (and therefore the counter could be between 0 and 2,000,000)? Or for 1 millisecond and it will range only from 0-2000? I need the maximum precision I can get, counting for 1 or more seconds would be ok. If this is the case, can I use COUNTER, and clear the counter on (say) the transition of a second, then wait for (lets say) 10 seconds - again, by watching the seconds transition, and reading a value of the counter from 0 to 10*150KHz = 1,500,000 ??
 
Excellent!!!!



OK, so in my case, counting output from a flux-gate magnetometer which will be between 50 and 150KHz should be well within its range.



Can you clarify that? Do you mean it starts counting from the first rising edge to the FIRST falling edge? (ie, measures the "high" time)? Or do you mean it counts each rising edge only after it sees a falling edge after it's been enabled? (ie, if the input is high when you start, it won't count that until it sees an actual low-to-high edge?)



Are you saying that the counter may have jitter? Ie, it may see a higher frequency on one pass if it's been delayed getting (say) a 1-wire reading, but the next time it would read low (because the second counting interval would be shorter)?

Does this counter constantly update? Is it gated? What's the sample time? Can we improve its stability by (for example) using a delay to permit the device to take a reading without interruption? Or somehow synchronise the sample interval with a quiet time?

What is the precision? Do you count for 1 second (and therefore the counter could be between 0 and 2,000,000)? Or for 1 millisecond and it will range only from 0-2000? I need the maximum precision I can get, counting for 1 or more seconds would be ok. If this is the case, can I use COUNTER, and clear the counter on (say) the transition of a second, then wait for (lets say) 10 seconds - again, by watching the seconds transition, and reading a value of the counter from 0 to 10*150KHz = 1,500,000 ??

Counter is precise, one pulse per count. The counter increament by one when it saw the input from falling edge to raising edge. The max number count is a 32bit signed number, the fastest pulse counter can count is 2MHz.

The frequency counter is similar like counter, but for certain amount time. However, if the processor is busy on other things, it may not come back to stop counting pulses. Dedicated frequency meter normally don't do anything at all to help prevent the wrong value. You could do that by not have any PLC code, not setup any email, not temp sensor at all. then pulling the fcounter value will be more accurate.

I can not tell you the frequency meter implementation details, but it can counts frequency like 60Hz AC, to 2MHZ signals. In most cases, accuracy is better than 5%, 60Hz AC reads 60 all the time. If you only pick the lower frequency out of few other freqnency reading, you could get close to 1% accuracy. If you want to have max accuracy, you can use counter to count, then after certain delay, copy counter into a ram or var, come back to divide the value. Because max counter value is 32bit signed number, that can provide much accurate value for you.
 
Counter is precise, one pulse per count. The max number counter can store is 32bit signed number, the fastest pulse counter can counts is 2MHz.

OK, this works for me. If I integrate over several seconds (I only need readings every 5 seconds), I can have quite reasonable precision - certainly better than the equivalent of 10-bit A/D, and likely aproaching 16 bit precision if I can accurately synchronise time. This is a real bonus for me.

Now, if only I could upgrade the firmware on my older boards!! <hint, hint! That would REALLY rock my world!>
 
Back
Top