Another Winder Calculation Questions

Critt

Member
Join Date
Apr 2006
Location
Ontario
Posts
153
Hello All

Working on a large Unwinder/Winder Application

Core = 24"
Max Roll = 192"

Motor is 1780 RPM coupled to 124.41 Gearbox with Encoder connected to the Motor Shaft
Encoder is 1024 Pulses Connected to the VFD encoder card and mapped over the ethernet network

Trying to start with the FPM
Then I want to calculate distance and roll Diameter

I know FPM = Output RPM * Circ
So starting with an empty roll @ 600 RPM/124.41 = 4.822 output RPM is roughly 376 FPM

From there should I calculate Circumference as the line is running or would you calculate distance travelled ?
 
The key piece of information you've left out is the thickness of the material you're winding.

It can be helpful to think of the roll diameter in terms of its area. The area of material on the wound roll is PI times the square of the difference between the outside radius and the core radius. The length of the material is that area divided by the material thickness. Every 127,396 encoder pulses the wound roll diameter increases by two times the material thickness.

Depending on how much the material stretches, you may need to compensate for how much the material thickness decreases as you increase the tension. My winder background is in the paper industry where that wasn't a significant factor.
 
Last edited:
Thanks for the feed back
The material thickness is currently going to be entered by the operator.
Current thickness I am testing with is .656" x 72" wide
 
Update: SteveB was faster; I am saying the same things.


A simple-minded model says the length will be proportional to ((K * #revs) + (delta_layer * #revs * (#revs + 1) / 2))


You need to choose the level of accuracy desired.



TL;DR



Is the process measuring anything other than encoder pulses e.g. linear feet from an idler wheel, or roll radius? I suspect not because it seems those is what need to be calculate.

Do we have an estimate of layer thickness (radius and/or diameter change) per rev? Does the tension stay constant and/or does per-layer thickness change during the wind?

Almost every computer program is a model of something in the real world, and the first design choice is the level of fidelity. Every other design choice flows from the first. E.g. to first order, radius, diameter and circumference are linear with the square root of [length - phantom_length], where phantom_length is a function of layer thickness per rev and the core size.
 
Last edited:
1024 (encoder) pulses = 1 motor rev(olution), so 1 = 1024 pulse/motorrev

124.41 motorrev = 1 rollrev, so 1 = 124.41 motorrev/rollrev

1 rollrev = 1 layer, so 1 = 1 rollrev/layer

656 milradius = 1 layer, so 1 = (1/656) layer/milradius

1 inch = 1000 mil, so 1 = 1000 milradius/inchradius

1 inch radius = 2 inch diameter, so 1 = 0.5 inchradius/inchdiam

24 inch diameter empty to 192 inch full => (192-24) = 168 inchdiam change in diameter

So, multiplying by 1 several times:

Code:
[FONT=Courier New]
    inchdiam       inchradius        milradius     1    layer       rollrev          motorrev         pulse
168 -------- * 0.5 ---------- * 1000 ---------- * --- --------- * 1 ------- * 124.41 -------- * 1024 --------
     roll           inchdiam         inchradius   656 milradius      layer           rollrev         motorrev

[/FONT]


~ 16312882 pulse/roll. Which is, interestingly, only slightly less than 16Mi (2**24 = 16,777,216), so whole pulses can be counted, or at least kept track of, in a 32-bit single-precision float with no loss of precision*; that is true down to 638 mil/layer.

  • divide whole number of pulses by 127395.84, save result as real FREVS
  • move FREVS to integer IREVS
  • subtract IREVS from FREVS, put result back in FREVS
  • if FREVS is less than zero, decrement IREVS by 1, increment FREVS by 1.0
  • calculate PI * [(IREVS*0.972667)+ (0.027333*IREVS*(IREVS+1))], put result in float FEET
  • calculate PI * FREVS * (0.972667 + (0.027333*IREVS)), add result to FEET
Mean roll diameter ~ 12 + ((IREVS + FREVS) * 0.656)

For other thicknesses, MILPERLAYER entered by operator:

  • 0.027333 should be replaced by (MILPERLAYER/24000) = FEETPERLAYER
  • 0.972667 should be replaced by (1 - FEETPERLAYER) - PHANTOMDIAM
  • 0.656 should be replaced by (MILPERLAYER/1000)
Accuracy is probably a fraction of a percent.

* 600rpm is 100ms/rev or ~98us/pulse, so a high-speed counter is needed, but you already know that. 1024 pulse/motorrev * 124.41 motorev/rollrev = 127395.84 pulse/rollrev, and the code could count pulses, and every time the count is larger than 127395 subtract 127396 from the pulse count and add 1 to the IREVS, with 1ppm+ error.
 
Last edited:

Similar Topics

Hi I am currently writing software for a dual winder with dc drives in torque mode. I have used 1 pid loop to match the line speed (line speed is...
Replies
17
Views
5,023
Hi, The hardware is: Click Plc model # CO-O1DD1-O HMI model # S3ML-R magnetic-inductive flow meter model # FMM100-1001. I will set the flow meter...
Replies
4
Views
130
So I had an odd request from a customer for the above. I have written the logic and tested it all in one PLC with only using 7 outputs and 7...
Replies
15
Views
427
Hello I need to message read the entire 16 channel raw analog inputs from a 1769-L33ER Compact Logic controller to another 1769-L33ER Compact...
Replies
8
Views
243
I am noticing a problem where i am using MOV instruction and writing literal text into source and String datatype in destination. It works fines...
Replies
6
Views
486
Back
Top Bottom