13
ABB Motion control products 1 www.abb.com/motion This application note describes how ABB servo products may be used to achieve web tension control. Particular detail is applied to the winding of web materials. Product films often have to be wound and unwound many times during their manufacture. It is important that this is done correctly or there is a chance that the product may become damaged during transport or when loaded onto a new machine for further processing. Introduction Introduction Introduction Introduction A brief background is given of the common mechanical setups for web tension control. Problems associated with winding or unwinding of web materials are described. Finally, an example shows how to code a servo application for taper tension control of a re-winder. Tension zones and Nip Induced Tension Tension zones and Nip Induced Tension Tension zones and Nip Induced Tension Tension zones and Nip Induced Tension Different processes require different tensions. For example consistent tension profiles are necessary for printing. To load the material onto the machine from an un-winder may need a smaller tension than for the machines mid section. Web guide systems will not work without tension. Many other processes will not work unless the material is under tension. A tension zone will exist between any two rolls that are either driven or braked. An example of a two zone machine would be as follows. A driven master roller draws the web material through the machine and sets the machine speed. An unwind brake at the start pulls against the master roller to create the first tension zone. A re-winder at the end of the machine operates in torque mode. The re-winder pulls against master roller creating tension in zone 2. It is much easier to fault find problems with web transport if a machine is divided into different tension zones. All materials will elongate or strain under the effects of tension or stress. The material tension will be in proportion to its elongation by the coefficient of elasticity for the material, up until the point of failure. If the material strain goes above its elastic limit the material will be permanently deformed. If the material is under strain it will try to retract to its original length like a spring. For a wound roll this Motion Control Products Application note Tension control AN00212-002

AN00212-002 Tension control - ABB Motion Control

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: AN00212-002 Tension control - ABB Motion Control

ABB Motion control products 1

www.abb.com/motion

This application note describes how ABB servo products may

be used to achieve web tension control. Particular detail is

applied to the winding of web materials.

Product films often have to be wound and unwound many times

during their manufacture. It is important that this is done

correctly or there is a chance that the product may become

damaged during transport or when loaded onto a new machine

for further processing.

IntroductionIntroductionIntroductionIntroduction

A brief background is given of the common mechanical setups for web

tension control. Problems associated with winding or unwinding of web materials are described. Finally, an example shows how to

code a servo application for taper tension control of a re-winder.

Tension zones and Nip Induced TensionTension zones and Nip Induced TensionTension zones and Nip Induced TensionTension zones and Nip Induced Tension

Different processes require different tensions. For example consistent tension profiles are necessary for printing. To load the material

onto the machine from an un-winder may need a smaller tension than for the machines mid section. Web guide systems will not

work without tension. Many other processes will not work unless the material is under tension.

A tension zone will exist between any two rolls that are either driven or braked. An example of a two zone machine would be as

follows. A driven master roller draws the web material through the machine and sets the machine speed. An unwind brake at the

start pulls against the master roller to create the first tension zone. A re-winder at the end of the machine operates in torque mode.

The re-winder pulls against master roller creating tension in zone 2. It is much easier to fault find problems with web transport if a

machine is divided into different tension zones.

All materials will elongate or strain under the effects of tension or stress. The material tension will be in proportion to its elongation

by the coefficient of elasticity for the material, up until the point of failure. If the material strain goes above its elastic limit the material

will be permanently deformed. If the material is under strain it will try to retract to its original length like a spring. For a wound roll this

Motion Control Products

Application note

Tension control

AN00212-002

Page 2: AN00212-002 Tension control - ABB Motion Control

Application note Tension control AN00212-002

ABB Motion control products 2

www.abb.com/motion

will create compressive forces on the inside layers. As a guide the maximum tension should never exceed 25% of the materials

elastic limit but it will depend on the material.

There are two basic methods of controlling the tension.

Nip induced tensionNip induced tensionNip induced tensionNip induced tension

The web runs between two nip rolls and a force is applied between the two nips. This

force generates a frictional tension along the material proportional to the force and the

coefficient of friction between the material and the nip surface. By controlling the force

the tension can be controlled. The tension before and after the nip is different so the

nip has the effect of isolating different sections of the machine with different tensions.

T = T = T = T = µ * F T = Friction induced tensionµ * F T = Friction induced tensionµ * F T = Friction induced tensionµ * F T = Friction induced tension

µ = Coefficient of frictionµ = Coefficient of frictionµ = Coefficient of frictionµ = Coefficient of friction

F = Perpendicular force on materialF = Perpendicular force on materialF = Perpendicular force on materialF = Perpendicular force on material

TensionTensionTensionTension induced from a driven rollerinduced from a driven rollerinduced from a driven rollerinduced from a driven roller If the nip roll is driven from a servo system we have the option of adding or subtracting

tension from the web. We could apply a positive or negative torque. For a constant

diameter roller the tension is proportional to the torque. The torque operates like a

lever in reverse. In a lever we apply a force at a distance to achieve a torque and the

greater the distance the smaller the force required to achieve the same torque.

Because we are driving the roller from the center however we need more torque to

achieve the same tension as the diameter of the roller increases.

Tq = T * RTq = T * RTq = T * RTq = T * R Tq = TorqueTq = TorqueTq = TorqueTq = Torque

T = TensionT = TensionT = TensionT = Tension

R = RadiusR = RadiusR = RadiusR = Radius

The servo system gives us the additional option of changing the tension by driving the

roller via speed control faster or slower than the web. We would control the tension by

controlling the amount of elongation in the material. The formula opposite describes

this relationship. V2 is our controlling function. Suppose we want to increase the

speed of the material from 100m/min to 102 m/min and EA is 200N. For simplicity let

T1 =0

The tension increase T2 = 200N * (102m/s – 100m/s)/100m/s = 4N

Now if our controlling function V2 was in error by 0.25% the resultant tension would

be T2 = 200N * (102.255m/s – 100m/s)/100m/s = 4.51N which is a 12.75% error

If we controlled the tension by controlling the center torque of the roll then a 0.25%

error in torque would produce only a 0.25% error in tension because torque is

proportional to tension. In conclusion, unless the material is stretchy ie EA is small, use

torque control.

T1 = T2*(V2/V1) + EA(V2T1 = T2*(V2/V1) + EA(V2T1 = T2*(V2/V1) + EA(V2T1 = T2*(V2/V1) + EA(V2----V1)/V1V1)/V1V1)/V1V1)/V1

T1 = Tension before rollerT1 = Tension before rollerT1 = Tension before rollerT1 = Tension before roller

T2 = Tension after rollerT2 = Tension after rollerT2 = Tension after rollerT2 = Tension after roller

V1 = VelociV1 = VelociV1 = VelociV1 = Velocity of web before rollerty of web before rollerty of web before rollerty of web before roller

V2 = Velocity of web after rollerV2 = Velocity of web after rollerV2 = Velocity of web after rollerV2 = Velocity of web after roller

E = Coefficient of elasticity of materialE = Coefficient of elasticity of materialE = Coefficient of elasticity of materialE = Coefficient of elasticity of material

A = Cross sectional area of materialA = Cross sectional area of materialA = Cross sectional area of materialA = Cross sectional area of material

Using servo systems on an unUsing servo systems on an unUsing servo systems on an unUsing servo systems on an un----winderwinderwinderwinder

When material is taken off a reel into a machine it should ideally be at constant tension. In many cases a brake or clutch may be

used to provide a fixed counter torque to the centre of the reel. As the reel diameter decreases the tension will increase because:

Tension = Torque Tension = Torque Tension = Torque Tension = Torque //// RadiusRadiusRadiusRadius

In reality you can often get away with a constant torque applied to the centre of the reel if the brake or clutch is sized for the tension

required between the minimum and maximum reel diameter. If different widths and types of material are used then the range of

Page 3: AN00212-002 Tension control - ABB Motion Control

Application note Tension Control AN00212-002

ABB Motion control products 3

www.abb.com/motion

tensions is likely to exceed the available settings on the brake. A servo drive may be used in these circumstances to set a varying

torque to achieve constant tension as the reel diameter changes.

The code example at the end of this application note is for re-winders but it can be used for un-winders as well. Remember though

that the “Taper Tension” option should not be used with un-winders.

An un-winder will generate energy which would be dissipated as heat if a brake is used. A servo system offers the option of

recovering this energy if the drive shares a DC link with others on the machine. Since brakes are normally quite large to cope with

the heat dissipation, servo systems offer a low inertia which allows much better tension control, particularly at low diameters.

If the web is accelerating during machine start-up, the un-winder may need to be driven to accelerate the web onto the machine.

Why is rollWhy is rollWhy is rollWhy is roll winding tensionwinding tensionwinding tensionwinding tension importantimportantimportantimportant

If the tension in a wound roll is two high you will create excessive residual strain in the roll. This can cause a number of problems

briefly described below:

− Web breaks can occur in the machine when the reel is unwound.

− Rolls can burst during storage.

− Tension wound into the material can create circumferential forces within the reel. If these become too high the material could

wrinkle or the core could collapse.

− Rolls can “block” i.e. some of the layers may fuse together.

Web materials are not perfectly uniform and the thickness could vary across the width of the material. Thicker layers will build up on

top of each other forming a mound. If the reel is wound too hard then the material will stretch and deform over the mound but not in

other areas. This causes a defect called corrugation or rope marks in the rolls.

If the tension in the roll is too low this can lead to telescoping of the reel during winding or unwinding. It is particularly important for

the core of the roll to be tighter as this must take the load of the outer layers of the roll.

If the web is a laminate of two or more materials then the web tension could distort the materials differently and cause the laminate

to curl or de-laminate.

If multiple print patterns are applied to a roll then the tension at each printing zone must match. Otherwise the web elongation will

be different and the print patterns will not line-up with each other.

The best way to choose the correct winding tension for a roll is from experience. It is helpful

to wind some test rolls. A good test is to do the following: Wind the material onto an empty

core up to say 100mm. Draw a straight line on the side of the reel from the edge of the core

to the edge of the reel. Wind on another 50mm thickness of material and then extend this line

to the edge of the reel. Continue this process in 50mm steps up to about 200mm and then in

100mm steps to the max reel diameter.

If the reel is wound too soft the layers will slip past one another as shown here and the

straight line will become a curved ‘J’ line. The reel should be wound until the line remains

straight.

Methods of Methods of Methods of Methods of wwwwinding mateinding mateinding mateinding materialsrialsrialsrials

There are three basic winding geometries:

− Centre winding

− Surface winding

− Centre surface winding

There are many variations and improvements on these basic methods. Some of these variations are described below to provide an

overview of the basic principles of rewinding.

Page 4: AN00212-002 Tension control - ABB Motion Control

Application note Tension control AN00212-002

ABB Motion control products 4

www.abb.com/motion

Centre Centre Centre Centre wwwwindingindingindinginding The core is driven from the centre by a motor and the material is wound

around the surface of the core. The main challenge with this geometry is

that air can get in between the layers of material during winding. Too

much air will produce a weak roll that will slip sideways.

This can be alleviated by pre tensioning the web before winding or by

applying a torque to the motor. Too much pre-tension could cause the

material to stretch.

Applying a central torque is also problematic in that the central layers of

the roll need to be tighter so that they can transmit the load through to

the outer layers. This limits the size of reel that can be wound using this

method.

The amount of centre wound tension required may be reduced by using a

lay-on roll. The lay-on roll applies nip induced tension to remove air. The

effect may be improved by winding the web around the lay-on roller first.

This is particularly useful for wide rolls because the web comes off the flat

surface of the lay-on roller onto the reel. This reduces the possibility of

wrinkles in the material.

Applying a central torque is a way of tensioning up the material. As the winding diameter changes, the torque will apply a different

tension to the outside material. Thus some method must be employed to keep track of the roll diameter.

Single roll surface windSingle roll surface windSingle roll surface windSingle roll surface windinginginging The basic concept behind surface winding is to force the reel into

contact with a roller which is rotating at a fixed speed. The reels outer

surface will run at the same speed as the driven rollers surface speed.

The contact force removes air between the layers and will increase the

density or hardness of the roll. The contact force applies a frictional

force to the material and thus induces tension.

A material must elongate to produce tension. The material must

therefore slip parallel to the reels surface when it stretches after the

nip. This means that adhesive materials cannot be tensioned in this

way.

With a single rewind roller there is no direct means of controlling web tension on the reel. This makes tension control difficult. By

adjusting the contact force of the roller against the reel, the tension can be controlled to some extent.

The effect can be enhanced if the winding roller is driven by a servo system. If the winding roller is driven at a speed faster than the

incoming web material it will pre tension it.

Page 5: AN00212-002 Tension control - ABB Motion Control

Application note Tension Control AN00212-002

ABB Motion control products 5

www.abb.com/motion

Centre surface windingCentre surface windingCentre surface windingCentre surface winding As the name would suggest, this is basically a combination of

centre and surface winding. An adjustable force applies the reel’s

surface into contact with a roller running at constant speed. The

reel is also driven from the centre. A motor applies a torque

through the reel to apply a counteracting tension in the web

material at the surface.

In the diagram the reel is shown suspended onto the winding

roller from a swing arm. In this configuration the weight of the reel

will contribute to the frictional force on the winding roller. The

force needs to be adjusted as the reel diameter increases so the

reel density must be known. This problem may be eliminated by

applying the reel to the winding roller from the side with a slider

mechanism.

Centre surface winding has an advantage over centre winding in that the wound in tension may be applied to the reel from a surface

roller and doesn’t all need to come from central torque. This means that the web tension upstream of the winder may be lower than

the wound in tension in the reel. Centre surface winding provides more options and so allows larger and denser rolls to be wound.

Twin roller surface windingTwin roller surface windingTwin roller surface windingTwin roller surface winding Twin roller surface winding is typically used on thick materials such as paper or

textiles and is not suitable for thin plastics.

The reel surface rests between two driven rollers. A force may be applied from

a rider roller from the top. As the diameter increases the reel weight will

increase so the applied force can be gradually reduced.

Shown here are two variations for loading the web material onto the reel. In the

top diagram the web material is brought between both surface rollers and the

reel. In the bottom diagram the web is brought around only the rear roller and

then onto the reel.

In the bottom diagram the rear roller drives the top layer of material onto the

roller and the front roller drives the layer underneath. The front roller is driven at

a higher speed to generate a frictional force between the layers of material. By

controlling this over-speed the amount of tension wound into the roll can be

controlled

The top configuration is ideal for slitting the material as it achieves the minimum

distance between slitter and reel. Both rolls may be driven at a similar speed

although you can get a drooping of material between the rolls.

Page 6: AN00212-002 Tension control - ABB Motion Control

Application note Tension control AN00212-002

ABB Motion control products 6

www.abb.com/motion

Tension control on a tTension control on a tTension control on a tTension control on a twin roller surface win roller surface win roller surface win roller surface rrrreeee----winderwinderwinderwinder

Tw = Web tensionTw = Web tensionTw = Web tensionTw = Web tension

Vw = Velocity of WebVw = Velocity of WebVw = Velocity of WebVw = Velocity of Web

Tr = Tension in outer surface of reelTr = Tension in outer surface of reelTr = Tension in outer surface of reelTr = Tension in outer surface of reel

Vr = Tangential velocity of reel surface layerVr = Tangential velocity of reel surface layerVr = Tangential velocity of reel surface layerVr = Tangential velocity of reel surface layer

Vf = Tangential velocity of front rollerVf = Tangential velocity of front rollerVf = Tangential velocity of front rollerVf = Tangential velocity of front roller

Ff = Force created by the reel on the front rollerFf = Force created by the reel on the front rollerFf = Force created by the reel on the front rollerFf = Force created by the reel on the front roller

Fr = Force createdFr = Force createdFr = Force createdFr = Force created by the reel on the rear rollerby the reel on the rear rollerby the reel on the rear rollerby the reel on the rear roller

µµµµ = Coefficient of friction between rewind roller and material= Coefficient of friction between rewind roller and material= Coefficient of friction between rewind roller and material= Coefficient of friction between rewind roller and material

DrDrDrDr = Diameter of rear roller.= Diameter of rear roller.= Diameter of rear roller.= Diameter of rear roller.

If the reel tension Tr needs to be lower than the web tension Tf then Vr would have to be less than Vw. Vr will have to be less than

Vf. Also because Vr < Vw slippage would occur between the reel and the incoming web on the front roller. The rear roller motor will

have to be sized to provide enough torque to restrain the reel against the friction force on the web material. The required torque that

would have to be applied to the rear roller is:

Tr = Tr = Tr = Tr = µµµµ x Ffx Ffx Ffx Ff x x x x (Dr / 2)(Dr / 2)(Dr / 2)(Dr / 2)

The wound in tension in the reel is heavily dependent on the weight of the reel. When the reel is started there will be minimum

weight so the front rewind roller may be driven overspeed to wind in more tension into the reel. This over speed then needs to be

gradually reduced as the reel diameter increases. Beyond a certain level of overspeed the material will droop between the front a

and rear winding rollers. If the wound in tension setting is correct there will probably be some droop so this can act as a visual

indicator of the wound in tension. The correct level of tension needs to be found from experience.

Coding a surface wound applicationCoding a surface wound applicationCoding a surface wound applicationCoding a surface wound application

In the twin roll surface rewind application described above the front and rear winding rollers can be given a velocity reference. The

front roller is given a higher VELREF to overspeed it. This is easily done during steady state conditions. For stopping and starting

however, the front roller needs to have an offset speed with respect to the rear roller. We can’t just set the rear roller to follow the

front roller at a lower speed ratio because the offset will not be fixed during acceleration and deceleration.

The solution is to use FLY move profiles to stagger the

acceleration of the front and rear rollers. The resultant velocity

diagram is shown on the left.

See application note AN00116 for more information on FLY

profiles.

‘Start front roller

MASTERDISTANCE(axFront) = msd1

FLY(axFront) = msd1 * ( (Vf-Vr) / Vf * 2) : GO(axFront))

‘Continue front roller acceleration and start rear roller

MASTERDISTANCE(axFront) = msd2

FLY(axFront) = msd2 * ( (Vf-Vr)/Vf + (Vr/Vf * 2) ) : GO(axFront))

MASTERDISTANCE(axRear) = msd2

FLY(axRear) = msd2 * ( Vr/Vf * 2 ): GO(axRear))

‘Run at synchronous speed

MASTERDISTANCE(axFront) = msd3

FLY(axFront) = msd3 : GO(axFront))

MASTERDISTANCE(axRear) = msd3

FLY(axRear) = msd3 : GO(axRear))

‘Decelerate front and rear roller

MASTERDISTANCE(axFront) = msd4

FLY(axFront) = msd4 * ( (Vf-Vr)/Vf + (Vr/Vf * 2) ) : GO(axFront))

MASTERDISTANCE(axRear) = msd4

FLY(axRear) = msd4 * ( Vr/Vf * 2 ): GO(axRear))

‘Continue to decelerate front roller

MASTERDISTANCE(axFront) = msd5

FLY(axFront) = msd5 * ( (Vf-Vr) / Vf * 2) : GO(axFront))

Page 7: AN00212-002 Tension control - ABB Motion Control

Application note Tension Control AN00212-002

ABB Motion control products 7

www.abb.com/motion

Centre winding tension controlCentre winding tension controlCentre winding tension controlCentre winding tension control

In a basic centre winder all the wound in tension is achieved by applying a torque at the centre of the reel. The straightforward

formula for tension is:

TTTTorqueorqueorqueorque ==== TTTTensionensionensionension x Radiusx Radiusx Radiusx Radius

There is a spectrum of tension profiles to choose from varying from constant torque to constant tension. Some materials are

forgiving and we could simply get away with a constant torque. This would give us a rapidly decreasing tension profile. An

improvement can be gained by trying to achieve a constant tension. To do this we need to re-calculate the applied torque at the

centre as the radius changes. The roll will end up with a constant density profile throughout. If we want a roll that is harder towards

the centre then we want to choose a taper tension profile.

To apply a taper-tension profile we need to be able to measure the reel radius at all times or be able to estimate it accurately. We

could read the radius by wiring the output of an ultrasonic sensor or follower arm into the analogue input of the servo controller.

If we want to avoid using a sensor then the radius can be calculated if we know the material thickness. The reel axis has a position

counter that can be used to measure the amount of material that has been fed onto the reel. The position counter would have to be

reset when the empty core is loaded. To calculate the radius we use a formula derived from the fact that the material would look like

a rectangle in cross section if it were tolled out flat. It would have the same cross sectional area it does on the reel. The formula is:

Material Length x Material thickness = (Reel radius ^ 2 Material Length x Material thickness = (Reel radius ^ 2 Material Length x Material thickness = (Reel radius ^ 2 Material Length x Material thickness = (Reel radius ^ 2 –––– Core radius ^ 2) x Core radius ^ 2) x Core radius ^ 2) x Core radius ^ 2) x π

A disadvantage with this approach is that the material thickness is a guesstimate and must take into account the amount of air

included between layers. Under taper tension control the amount of air is lower towards the centre of the reel.

An alternative approach for measuring radius is to wind the web around a roller fitted with an encoder and read the web velocity. If

another axis on the machine is driven from a servo we can use its encoder feedback for this purpose. If we have a nip roller axis

with a constant radius we can say that the surface velocity of the nip roller will equal the web velocity which will equal the surface

velocity of the reel. We can then use the following relationship to measure the reel radius.

Surface velocity of nip roller = Angular velocity ofSurface velocity of nip roller = Angular velocity ofSurface velocity of nip roller = Angular velocity ofSurface velocity of nip roller = Angular velocity of nip x Radius of nipnip x Radius of nipnip x Radius of nipnip x Radius of nip = Angular velocity of reel x Radius of reel= Angular velocity of reel x Radius of reel= Angular velocity of reel x Radius of reel= Angular velocity of reel x Radius of reel

This is fine when the machine is running but it can’t be used in this form when at zero velocity. We need to use a starting value for

the reel radius such as the core diameter. The operator should be able to adjust the diameter and it is much easier to measure than

material thickness. Once the reel speed goes above a minimum threshold, the calculated radius can be gradually adjusted in steps.

This method is shown in more detail in the following section on coding an application.

If surface winding and a taper tension profile is required we cannot use this method of calculating the reel radius. We need an

external diameter measurement.

Page 8: AN00212-002 Tension control - ABB Motion Control

Application note Tension control AN00212-002

ABB Motion control products 8

www.abb.com/motion

Coding a centerCoding a centerCoding a centerCoding a center wound applicationwound applicationwound applicationwound application open loopopen loopopen loopopen loop

The following section shows how a centre wound application may be coded. This is classed as open loop because, although the

applied torque and radius of the reel are monitored, there is no measurement of the resultant web tension. There are two axes: a

master nip and a rewind. The rewind axis will operate in torque mode. Constants for the axes are defined at the top of the program:

Const _axMASTER As Integer = 3

Const _axREWIND As Integer = 4

Each axis in mint has a SCALEFACTOR so that you can use user units like mm rather than encoder counts. In this example it is

convenient to scale the master axis to mm but the rewind axis cannot be given a linear scale as the number of encoder counts per

mm of web changes with the rewind radius. In this example the SCALEFACTOR for both axes is set to 1 and scaling is done using

constants. The rewind is scaled to revs/sec for convenience.

Const _fMasterScale = 70000 '7:1 Gearbox

Const _fRewindScale = 30000 '3:1 Gearbox

A number of user settings are used in the code. They are controller comms locations which allow for adjustment from a HMI. They

are defined at the top of the program thus:

Define hmiMACHINE_SPEED = COMMS(11) 'Machine set speed in m/min

Define hmiREWIND_TENSION = COMMS(12) 'Rewind tension %

Define hmiREWIND_MANDREL_DIAM = COMMS(13) 'Reel core diameter in mm

Define hmiREWIND_DIA = COMMS(14) 'Calculated reel diameter in mm

Define hmiREW_TAPER_TENSION = COMMS(15) 'Tension offset % for small diameters

We will want to read the velocity for both axes. We could use the VEL(axis) keyword however this does not always lead to the

smoothest reading for axis velocity. VEL is calculated from the rate of change of encoder counts in one loop closure time which is

250us but it gives a value in counts per second. Thus the minimum velocity that can be read is 1 count in 250us which would

appear as 4000 Counts per second. Using VELDEMAND will give a smoother reading for the master axis. Unfortunately

VELDEMAND cannot be used for the rewind axis because it is operating in torque mode.

A smoother calculation for rewind velocity is done using a timer event called every 100ms. The encoder velocity is the difference

between current and previous encoder counts divided by time. Note that the Wrap function is used here and elsewhere to allow for

the encoder counter to wrap from the maximum positive to the maximum negative count.

Dim fVelRewind As Float

Dim fVelPrevRewind As Float

Dim fVelChngRewind As Float

Dim tTimebaseRewind As Time

TIMEREVENT = 100

Event TIMER

'Tasks to be done every 0.1 Seconds

'Calculate the rewind velocity from the encoder difference

fVelChngRewind = Wrap( ENCODER(_axREWIND) -fVelPrevRewind, -8388608,8388607)

fVelPrevRewind = ENCODER(_axREWIND)

'Use a timer to calculate the number of rewind encoder pulses since the last sample

'Encoder velocity = distance travelled / time

If (tTimebaseRewind > 10) And (tTimebaseRewind < 1000) Then

fVelRewind = Abs( (fVelChngRewind * 1000 ) / tTimebaseRewind)

Else

fVelRewind = 0

EndIf

tTimebaseRewind = 0

End Event

In the same timer event the ’bAdjustRadius’ flag is set to re-calculate the rewind radius every second.

Page 9: AN00212-002 Tension control - ABB Motion Control

Application note Tension Control AN00212-002

ABB Motion control products 9

www.abb.com/motion

Dim n1SecondCounter As Integer = 1

Dim bAdjustRadius As Integer = _false

'Increment 1 Second counter

n1SecondCounter = n1SecondCounter + 1

If n1SecondCounter > 10 Then

n1SecondCounter = 1

'Tasks to be done each second

'Adjust the calculated rewind radius once the re-winder is running

If (fVelRewind > 500) Then bAdjustRadius = _true

EndIf

A subroutine is called to calculate the reel radius and apply a torque to the rewind servo. The formula ‘Angular velocity of nip x

Radius of nip = Angular velocity of reel x Radius of reel’ is used to calculate the radius. This is compared with the previous value.

Large changes are ignored. The resultant change in radius is limited to avoid rapid changes in the tension setting. Note the use of

‘doBound’. This is a simple user defined function for limiting a variable between two values.

Const _fMasterRadius = 47.75 '300mm Circumference

Const _fMastScaleMperMin = 3888.6 'Scales the master set speed to m/min

Const _fMaxDiaRewind = 500

Const _fMotorCurrentRatio = 12/19.5 'Defines the max torque for the motor

Dim fRewindRadius As Float

Dim fTorqueSP As Float

Dim fRadiusErr As Float

Dim fPrevRadiusErr As Float

Dim fAdjustment As Float

Dim fLowDiamTerm As Float

Sub DoSetRewindTension(ByVal fTensionSP As Float, ByVal fDirn As Float)

Critical

If (fVelRewind > 500) Then

fRewindRadius = _fMasterRadius * VELDEMAND(_axMASTER) * _fRewindScale / (fVelRewind * _fMasterScale)

fRewindRadius = doBound(fRewindRadius, (hmiREWIND_MANDREL_DIAM / 2), (_fMaxDiaRewind / 2) )

fRadiusErr = fRewindRadius - (hmiREWIND_DIA / 2)

If (Abs(fPrevRadiusErr - fRadiusErr) < 5 ) And bAdjustRadius Then

'The current rewind radius has been calculated from the web speed and the re-winder speed

'Adjust the radius value by the error but by no more than a certain amount

fAdjustment = doBound(fRadiusErr, -25.0, 25.0)

hmiREWIND_DIA= doBound((hmiREWIND_DIA + fAdjustment), hmiREWIND_MANDREL_DIAM, _fMaxDiaRewind)

bAdjustRadius = _false

End If

fPrevRadiusErr = fRadiusErr

End If

End Critical

A tapering torque term ‘fTaperTrq’ is calculated for low diameters. The calculation will equal the users setting of

‘hmiREW_TAPER_TENSION’ when the reel is at minimum diameter and this term will gradually slope down to zero at

the maximum reel diameter.

The constant tension component of torque is then calculated as a percentage of the maximum tension which occurs

at the maximum reel diameter. The ‘fTaperTrq’ is then added to this to give the final torque setting for the servo.

Page 10: AN00212-002 Tension control - ABB Motion Control

Application note Tension control AN00212-002

ABB Motion control products 10

www.abb.com/motion

'Calculate the torque reference compensating for low reel diameter

If(_fMaxDiaRewind - hmiREWIND_MANDREL_DIAM > 0) Then

fTaperTrq = hmiREW_TAPER_TENSION * (_fMaxDiaRewind - hmiREWIND_DIA) / (_fMaxDiaRewind -

hmiREWIND_MANDREL_DIAM)

End If

fTorqueSP = (hmiREWIND_DIA * fTensionSP * _fMotorCurrentRatio / _fMaxDiaRewind ) + fTaperTrq

TORQUEREF(_axREWIND) = fDirn * doBound(fTorqueSP, 0,100)

End Sub

Some means of web break detection is needed. The surface velocity of the master and rewind are compared. If the

rewind is significantly faster than the master then web must have broken releasing the rewind to accelerate and run

away. A further check is made of the master velocity to make sure it is on target. If the web brakes upstream of the

master the re-winder might have sufficient strength to pull the web past the master nip roll and so over-speed this roll.

To stop spurious events being detected, ten web breaks must be detected in a row over 1 second before the

‘bWebBreak’ flag is set.

Dim nWebBreakCount As Integer

Dim bWebBreak As Integer

'Web break detection

'The rewind is running away if its surface velocity is allot higher than the web velocity

If (fVelRewind > 10000) And (VELDEMAND(_axMASTER) > 10000) Then

If Abs(fVelRewind * fRewindRadius / _fRewindScale ) > Abs(VELDEMAND(_axMASTER) * _fMasterRadius * 1.1/

_fMasterScale) Then

nWebBreakCount = nWebBreakCount + 1

Else If ( VEL(_axMASTER) > (VELDEMAND(_axMASTER) * 1.2) ) Then

'Check that a web break upstream of the master nip is not driving the master nip roll.

nWebBreakCount = nWebBreakCount + 1

Else

nWebBreakCount = 0

End If

If nWebBreakCount > 10 Then bWebBreak = _true

End If

Finally the main loop of the program jogs the master axis and calls the rewind tension routine. If the stop button is

pressed or there is a web break, the machine is stopped.

Dim fRewindDir As Float = 1

Dim bStopPressed As Integer

'Main program loop

Repeat

DoSetRewindTension( hmiREWIND_TENSION, fRewindDir)

JOG(_axMASTER) = hmiMACHINE_SPEED * _fMastScaleMperMin

'wait for stop button or web break

Until bStopPressed Or bWebBreak

STOP(_axMASTER)

CANCEL(_axREWIND)

Page 11: AN00212-002 Tension control - ABB Motion Control

Application note Tension Control AN00212-002

ABB Motion control products 11

www.abb.com/motion

Inertia compensationInertia compensationInertia compensationInertia compensation

The inertia of a reel increases with the 4th power of its diameter. If the machine is accelerated or decelerated gradually then the

tension control strategy described above will work. For rapid accelerations and decelerations the inertia of the reel needs to be

taken into account. The reel inertia and acceleration torque may be calculated from the following formulae:

TTTTiiii = I * d= I * d= I * d= I * dω/dt/dt/dt/dt

dω/dt = 2= 2= 2= 2π * aaaa

I = ½ I = ½ I = ½ I = ½ πρwwww((((RRRR4444outoutoutout

–––– RRRR4444in)in)in)in)

TTTTiiii = Inertia compensating = Inertia compensating = Inertia compensating = Inertia compensating torquetorquetorquetorque

I I I I = Moment of inertia of reel= Moment of inertia of reel= Moment of inertia of reel= Moment of inertia of reel

ddddω/dt = Angular acceleration of reel/dt = Angular acceleration of reel/dt = Angular acceleration of reel/dt = Angular acceleration of reel

a a a a = Acceleration of reel in revs/s/s= Acceleration of reel in revs/s/s= Acceleration of reel in revs/s/s= Acceleration of reel in revs/s/s

ρ = Density of web material= Density of web material= Density of web material= Density of web material on reelon reelon reelon reel

w w w w = Width of reel= Width of reel= Width of reel= Width of reel

Rout Rout Rout Rout = Outer reel radius= Outer reel radius= Outer reel radius= Outer reel radius

Rin Rin Rin Rin = Core radius= Core radius= Core radius= Core radius

For an e100 system the MOVESTATUS keyword may be used to detect if the master roll is accelerating. The reel acceleration

torque is calculated from the reel diameter and added to the torque applied to the re-winder. During deceleration it is removed.

Two new machine parameters are needed:

Define hmiREEL_DENSITY = COMMS(19) 'In Kg/m3

Define hmiREEL_WIDTH = COMMS(20) 'In meters

The DoSetRewindTension subroutine is modified at the end as follows:

Const _fmotorRatedTrq = 2.6 'Nm

Dim fInertiaTrq As Float

Dim fReelInertia As Float

'Calculate the reel inertia

'and derive the acceleration compensating torque from

'the move status of the master axis

'The acceleration torque is converted from Nm to

'a percentage of total motor torque

fReelInertia = 0.5 * _pi * hmiREEL_DENSITY * hmiREEL_WIDTH *( (hmiREWIND_DIA / 2)^4 –

(hmiREWIND_MANDREL_DIAM / 2)^4 )

If (MOVESTATUS(_axMASTER) And 2) Then

'The master axis is accelerating

fInertiaTrq = fReelInertia * 2 * _pi * (fVelRewind /_fRewindScale) * (100 / _fmotorRatedTrq)

Else If (MOVESTATUS(_axMASTER) And 32) Then

'The master axis is decelerating

fInertiaTrq = - fReelInertia * 2 * _pi * (fVelRewind /_fRewindScale) * (100 / _fmotorRatedTrq)

Else

'The web is not accelerating

fInertiaTrq = 0

End If

And the Torque setpoint is modified by the addition of the inertia compensation torque:

fTorqueSP = ( hmiREWIND_DIA * fTensionSP * _fMotorCurrentRatio / _fMaxDiaRewind ) + fTaperTrq + fInertiaTrq

Page 12: AN00212-002 Tension control - ABB Motion Control

Application note Tension control AN00212-002

ABB Motion control products 12

www.abb.com/motion

Friction compensationFriction compensationFriction compensationFriction compensation

There will be some friction from the rewind reel coupling and windage. This will create a counter torque on the re-winder servo

motor. There is a static and dynamic component to friction. The static friction is the torque that must be overcome to get the reel

moving. It is always present and is constant. The dynamic friction is proportional to the re-winder speed. It will be largest when the

reel is empty and we are winding onto the core. We add two additional parameters for static and dynamic friction as percentages of

continuous motor torque:

Define hmiSTATIC_FRICTION = COMMS(21) '% Torque

Define hmiDYNAMIC_FRICTION = COMMS(22) '% Torque

And then the following new constants and variables are declared:

Dim fVelAtCoreDia As Float

Dim fFrictionTrq As Float

The DoSetRewindTension subroutine is modified at the end as follows:

'Calculate friction compensating torque

'First calculate the rewinder max speed from the machine speed (in m/min)

'and use this to calculate the dynamic friction.

'Then add this to the static friction

fVelAtCoreDia = ( hmiMACHINE_SPEED * 1000 / 60 ) * _fRewindScale / hmiREWIND_MANDREL_DIAM

fFrictionTrq = hmiSTATIC_FRICTION + ( hmiDYNAMIC_FRICTION * fVelRewind / fVelAtCoreDia )

And the Torque setpoint is modified by the addition of the friction compensating torque:

fTorqueSP = ( hmiREWIND_DIA * fTensionSP * _fMotorCurrentRatio / _fMaxDiaRewind ) + fTaperTrq + fInertiaTrq + fFrictionTrq

To estimate the static torque go online to the re-winder drive in workbench. With the re-winder empty and not webbed up JOG the

axis at 5-10 % of its maximum speed. In the spy window or command line read CURRENTMEAS(0) for the drive current. The

percentage static frictional torque can be found by the formula:

Static friction = CURRENTMEAS(0) * Motor torque constant * 100 / Motor continuous torque

To estimateTo estimateTo estimateTo estimate the dynamic frictionthe dynamic frictionthe dynamic frictionthe dynamic friction,,,, JOG JOG JOG JOG thethethethe rererere----winder at full speed. Repeat the above procedure to calculate the total winder at full speed. Repeat the above procedure to calculate the total winder at full speed. Repeat the above procedure to calculate the total winder at full speed. Repeat the above procedure to calculate the total

frictional tfrictional tfrictional tfrictional torque. Take away the static friction from this to get the dynamic friction. orque. Take away the static friction from this to get the dynamic friction. orque. Take away the static friction from this to get the dynamic friction. orque. Take away the static friction from this to get the dynamic friction.

Page 13: AN00212-002 Tension control - ABB Motion Control

Application note Tension Control AN00212-002

ABB Motion control products 13

www.abb.com/motion

Center winder closed loop control

Open loop rewind control can’t control torque well enough if the re-

winder has to be the master driver in a one tension zone machine.

In this circumstance and others where accurate tension control is

needed we need to move to closed loop control.

Closed loop control would use a dancer arm or load cell to measure

the tension in the web. Dancer arms have the advantage that they

store some length of web and can smooth out tension fluctuations.

Load cells do not have this smoothing function.

With tension feedback a web break can be detected when the

measured tension drops below a threshold.

The target tension is applied using the method described in the previous section. For closed loop control we place this code inside

a control loop that monitors the tension and applies corrections to the target tension. We could use a PID loop to calculate the

target tension. In most applications it will not be necessary to use all the gain terms in a PID controller but they can be included if

needed.

Refer to application note AN00208 for information about coding PID loops using the Mint programming language.

ContactContactContactContact usususus

For more information please contact your

local ABB representative or one of the following:

www.abbwww.abbwww.abbwww.abb.com/.com/.com/.com/motionmotionmotionmotion

www.abb.com/drivwww.abb.com/drivwww.abb.com/drivwww.abb.com/driveseseses

www.abb.com/drivespartnerswww.abb.com/drivespartnerswww.abb.com/drivespartnerswww.abb.com/drivespartners

www.abb.com/PLCwww.abb.com/PLCwww.abb.com/PLCwww.abb.com/PLC

© Copyright 2012 ABB. All rights reserved.

Specifications subject to change without notice.