发表于:2005-06-28 23:24:00
17楼
使用卷筒、开卷后某一辊(测量辊)的角速度测量值来计算开卷机上的钢卷动态直径。它是基于带材的线速度和卷筒角速度的比较关系。你要维持带材的恒定张力,必须通过计算的卷径来控制电机的转矩。
MotorTorque= ( RollRadius * Tension ) / GearRatio
因为开卷或卷取都是一个张力方向,这个时候你可以通过控制传动里的Torque Limit (TorqueLimit=你要求的转矩大小),速度给定给一个比你线速度快或者慢(开卷或卷取)的参考(SpeedRef+or-5%offset),这个时候速度环输出饱和了,到达转矩环后被limit限制住,输出的大小就是你要求的张力了。
直流电机可以通过速度环的limit来做,道理是一样的。交流的控制方式则选择speed+torque的FVC矢量控制方式。需要带有编码器,不需要张力计。
tension to torque: (Siemens Step7 Program)
FUNCTION "T_Torq" : VOID
TITLE ="Tension torque"
KNOW_HOW_PROTECT
AUTHOR :
VERSION : 1.1
VAR_INPUT
Diam : REAL ; //Roll diameter (mm)
GearR : REAL ; //Gearbox reduction ration
TensR : REAL ; //Tension reference (daN)
END_VAR
VAR_OUTPUT
TensT : REAL ; //Tension torque (Nm)
END_VAR
BEGIN
NETWORK
TITLE =TensT = (TensR x 10) x Diam / (1000 x 2 x GearR)
// If Gearbox <= 0
L #GearR;
L 0.000000e+000;
<=R ;
SPB jp1;
// Tension torque
L #TensR;
L #Diam;
*R ;
L 2.000000e+002;
/R ;
L #GearR;
/R ;
T #TensT;
SPA jp2;
// If first condition TRUE
jp1: L 0.000000e+000;
T #TensT;
jp2: NOP 0;
END_FUNCTION
DiamCalc 卷径计算程序
FUNCTION "DiamC5" : VOID
TITLE ="Coil diameter calculation"
KNOW_HOW_PROTECT
AUTHOR :
VERSION : 1.0
VAR_INPUT
Enable : BOOL ; //Validation Calcul
Init : BOOL ; //Cde Init Diametre//start init. diameter
Enr : BOOL ; //Sens = Enrtoulage//way=backward
Corr : BOOL ; //Autorisation Correction
IBob : REAL ; //Delta impulsions bobineuse//delta pulses uncoiler
IRol : REAL ; //Delta Impulsions Rouleau mesureur//delta pulses roll mesuring
RBob : REAL ; //Rapport Nmoteur/Nmandrin//gear box
RRol : REAL ; //Rapport Nmoteur/Nrouleau mesureur
GBob : REAL ; //Resolution GI bobineuse
GRol : REAL ; //Resolution GI rouleau mesureur
DRol : REAL ; //Diametre rouleau mesureur
DIni : REAL ; //Diametre d initialisation
DCMin : REAL ; //Diametre calcule Mini
DCMax : REAL ; //Diametre calcule Maxi
K1 : REAL ; //Ctrl evolution (diam - diamprec)> K1 x Ep//new diam-old diam
K2S : REAL ; //Limitation correction diametre
K2T : REAL ; //Limitation correction diametre
EP : REAL ; //Epaisseur produit bobine (mm)//thickness for the strip
END_VAR
VAR_OUTPUT
DiamI : REAL ; //Diam calcule a chaque cycleeycl//each cycle cal. diam
Spir : REAL ; //Nbre de tours
CBob : REAL ; //Accumulateur impulsions bobineuse
CRol : REAL ; //Accumulateur rouleau mesureur
Diff : REAL ; //Ecart Diam - Diam Precedent/diff bewteen new diam and old
ErrC : BOOL ; //Erreur de Coherence evolution diametre//error of evolution diam
END_VAR
VAR_IN_OUT
DiamP : REAL ; //Diametre Precedent//old diam
DiamC : REAL ; //Diam calcule a chaque tour (mm)//caclu diam each tune
END_VAR
VAR_TEMP
ImpBoMax : REAL ; //Resolution x Rapport//pulse coiler max
TEMP : REAL ; //Reserve
TEMP2 : REAL ; //CBob * 2 * Ep / ImpBobMax
TMP_K2SEP : REAL ; //TMP K2S * Ep
TMP_K2TEP : REAL ; //TMP K2T * Ep
TMP_K1EP : REAL ; //TMP K1 * Ep
T_ErrS : BOOL ; //Erreur sens
T_ErrT : BOOL ; //Erreur Difference trop grde (too big)// cycle n-1
END_VAR
BEGIN
NETWORK
TITLE =Init Diametres
......
......
......