Query on weight dispensing using PID???

RPax

Member
Join Date
Feb 2004
Posts
125
Hi, I've got a project and was just wondering am i going about the right way of calculating it. I know this is basic engineering from secondary school but I'am still probably have it arse ways! Just not that fimiliar with this kind of thing.

I've got a conveyor with a load cell measuring the weight of the load on the conveyor and a Pulse Encoder measuring the speed. Pending on the flowrate of food on conveyor a proprtional amount of salt needs to is added from an overhanging hopper.

To calculate the flow rate on conveyor:
- Do I measure the weight at fixed intervals (say 1sec recording quantity in Kg) then calculate the Mass (x 9.8) and then multiply by the Density (of the food object) to get the end result equal the to volume,
- Is the volume then multiplied by the speed in m\sec from the encoder to get the flow rate in m3\s??


I plan to use a PID to apply salt as there is another load cell measuring the weight of salt in hopper and a control valve to dispense salt from hopper.

Is the folowing concept OK?
PID Setpoint = amount of salt to be dispensed (a %proportional value to food flow rate(previously calculated), again in m3/s)

Process Variable = LoadCell (Current Weight - Previous Weight calculated every sec x 9.8 x Density of Salt)= Process Variable (amount dispensed in m3\s)

Ouput= Control signal to control valve

I plan to do the above sequencially every 1 sec in the PLC code. Am I on the right lines or totally amiss? Appreciate any feedback on this. Thanks - Rpax
 
Is 1 second too slow?
Does the product volume vary much in 1 second? What happens if you run out of product for 0.5 seconds?

I'm sure there are many other factors to consider but basically your principle seems ok.
 
This is a straight ratio control problem, and PID is probably not the way to do it, at least for the amount of salt required.

PID is intended to be a feedback control mechanism, where there is an essentially continuously measured parameter (Process Variable), a target value for the parameter (Setpoint) and an output (Controlled Variable) that is manipulated to directly affect the process variable.

The amount of salt required won't work as a PID loop.

You could use a PID to control the salt flow, if you can measure the salt flow and can manipulate the valve or whatever proportionally to control that flow. You will have to make these decisions based on the physical system you are working with.
 
Firstly thanks for the reply lads, i don't think the product volume varies greatly so speed doesn't seem critical. MartB your right running out out of product is another side issue which I'll need to look at

Can the salt flow be controlled by the Loadcell measuring the salt weight. If I measure the quantity dispensed over time (Current Salt load - Previous Salt Load) would that be good enough to be consider as rate of salt flow?. The valve I currently have is a control valve and can be manipulated to change rate of flow. Again thanks for help
 
Pending on the flowrate of food on conveyor a proprtional amount of salt needs to is added from an overhanging hopper.
The Flowrate of food on conveyor is your Process Variable. Amount of Salt to Add is your Setpoint. Control Variable is the amount of opening/closing of Salt Hopper valve.

You will need to Scale your Food Flow Rate by a multiplier that incorporates the salt-to-food ratio, then send the scaled value to your PID Process Variable.

Salt PV = Food Flow (grams/sec?) X Salt Ratio (Salt grams/Food grams)

The Salt Ratio is an empirical number that your food chefs probably know already, and it cannot be determined by the PLC, but must be determined by taste trails and perhaps food preserving factors.

The load cell weight of the salt hopper is only useful to determine when the hopper needs refilling. You could calculate an average salt flow rate, but I don't see any benefit to the PID loop from that value.
 
Last edited:
RPax - are you using a weighfeeder type conveyor? i.e. is the speed controlled to keep the weight on the belt constant?

Or is the conveyor speed fixed? If so, are you just monitoring it for a run condition?

Mart B
 
Thanks for the replies, that seems like a good way to go lancie1. MartB, the conveyor is independently set at a constant speed from the operator panel and the load cells monitor the weight that is constantly changing. The encoder checks whether running. Thanks again
 
The salt should be applied at the downstream end of the weigh conveyor, so there is time for the salt valve to adjust for the latest weight of food.
 
lancie1, was wondering is your suggestion only applicable if the flowrate is kept relatively constant with a conveyor (where the speed is controlled to keep weight relatively constant) like martb suggested?.

On my system the flowrate of food on the conveyor varies pending on the weight of food coming in (no way of controlling weight of food on conveyor), as the conveyor is kept at a constant speed. Have I misunderstood or can your way still be used?
 
If the food flowrate is relatively constant, then it will not be as likely to apply the salt in gobs or pools. But if the conveyor speed is not too fast, it should work to some extent. It depends some on where the salt is applied. It should be several centimeters (6 inches?) after the weigh belt, to allow time for the valve to respond to the last weight.
 
Lancie1,

With all due respect, I think you need to double-check your suggestion for PID parameters.

Lancie1 said:
The Flowrate of food on conveyor is your Process Variable. Amount of Salt to Add is your Setpoint. Control Variable is the amount of opening/closing of Salt Hopper valve.
There is no feedback. The loop would drive to full open or full closed trying to get the PV to the SP
RPax had it pretty much right in his first post.

SP = Product rate * Salt/Product ratio
PV = Actual Salt rate determined from the hopper load cell
CV = Output to the control gate

The loop will adjust the control gate until the actual salt rate matches the desired salt rate determined by the amount of product passing on the conveyor.

RPax, I’d keep things simple and use rate units in weight/time instead of trying to work out volumetric flow rates in the program. You should be able to calculate your salt/product ratio in terms of weight.

Depending on the resolution of your load cell, I’d set the update time of the PID to less than 1 sec so you don’t end with a few seconds of salt on the conveyor after it empties.
 
With all due respect, I think you need to double-check your suggestion for PID parameters.
Brownhat, you have a point, and I thought about the process again. The process variable is not the "actual salt rate", but the amount of salt per unit weight of food. Think about it this way: If you were salting some popcorn, and I said "well, the salt rate is 5 teaspoons/second".

Would that be a Process Variable that could be used to salt 1 kernal of popcorn? Not unless you like salt more than popcorn! The food flow rate or food quantity MUST be used in there somewhere...

Using the food flow rate as the variable, the valve will open more if there is more food, and close if there is less, depending both on the amount of food, AND also the Ratio of salt/food that is used in the scaling calculation.

Using only the salt flow rate as you suggest, there might be 1 piece of bacon that gets 10 pounds of salt, or there might be a whole hog on the conveyor that gets 110 pounds of salt. You must be ASSUMING that the amount of food is a constant, so the only thing needed is to decide the sprinkle rate of the salt. In which case a constant salt flow can be set (without any process input whatever, because the salt rate should not vary if the food rate is not varying. All that would be needed then is a set screw in the valve to set it to a certain position.

However our client plainly said that the food weight crossing the weigh belt varies (although "not greatly"), so it is thus a "variable". The question is it a process variable that can be measured in a timely fashion and thus be a contributing factor to solving the problem, or is the weight measurement too slow? We cannot answer that question without running some tests on the equipment.

You said: SP = Product rate * Salt/Product ratio

As I see it there are two variables, the food rate and the salt rate, becaues you are dealing with a ratio. Either could be used, but the food rate is the "input" quantity, while the salt rate is determined by the input quantity. In the above equation, the Procuct Rate is the important variable, while the Salt/Product ratio should be a fixed number based on how much salt is needed to taste good. Is these a french fry conveyor?

If the Setpont is based on the Product Rate, then how can the Process Variable be anything but the Product Rate X Salt Ratio?
 
Last edited:
Lancie1 said:
The food flow rate or food quantity MUST be used in there somewhere...
And I said: SP = Product rate * Salt/Product ratio

As I understand PID loops...

Set Point = What you want
Process Variable = What you have
Control Variable = What to adjust to get to what you want

So...

What I want (to add X grams of salt to X kg of food)
SP = The food flow rate multiplied by my recipe of (grams salt)/(kg food)
PV = How much salt I am adding
CV = Should I be adding a little more or a little less? Should I open the control valve a little or should I close it a little?

In many applications the Set Point of a PID loop remains constant, and the loop corrects for changing loads. In this application, the loop will be correcting for a changing load (the weight of the salt in the hopper pushing against the control valve), but it will also have a changing set point (how much salt should I be dropping right now?).

I like your salty popcorn analogy, and when I salt my popcorn I do apply a quantity of salt, not a rate. But salting a bowl of popcorn is a batch process, where it is proper to talk in terms of tsp per bowl. Food passing on a conveyor is more of a continuous flow process where I'll often talk in terms of rates.
 
Now for the implementation part

What happens when the line startups up or slows down rapidly. A PID will not ramp up and down as quickly. It takes time for the PID to respond. When ramping up the belt speed the amount of salt will be too low. When stopping the amount of salt will be too high. Should one use a PID? If so then how?
 

Similar Topics

Hi, we are using allen bradley plc. for loading the data from plc to buffer i am using FFL/ FFU. and loading the data in buffer array. it worked...
Replies
0
Views
333
Hi all, We have a very old pit pump system running on Micrologix 1000. Now, whenever there is an alarm for high conductivity, we want that alarm...
Replies
5
Views
1,208
Hi, I am connecting an Autonics make stepper driver type, MD5-ND14 to a Kinco PLC (K205 series) this has a sourcing output which cannot be...
Replies
2
Views
1,097
I came across this online test question about tags - has anyone taken a Siemens course and know what is meant by "scope"?
Replies
7
Views
1,387
Good Evening, I'm loading a recipe into a Rockwell ControlLogix or CompactLogix CPU via Excel, this is all working fine. Is there anyway I can...
Replies
7
Views
1,971
Back
Top Bottom