跳到主要内容

金属拉丝机 — 多级张力同步与双工位换盘

一句话: 8 道次水箱拉丝 + 末端双工位飞剪换盘收卷, 入口 5.5 mm, 出口 1.2 mm, 最高 12 m/s。Darra 用 FB_Gear 级联电子齿轮 + FB_Winder 卷绕工艺对象 + FB_FlyShear 飞剪 把 14 轴伺服在一台工控机里跑通。


1. 设备简介

水箱式拉丝机是焊材、弹簧、切割丝、钢帘线行业的主力设备, 通过 多道次串联卷筒 把粗线径金属线逐道缩径拉拔, 每道次以 15%~22% 延伸率 递减, 同时在润滑液浸润和模具摩擦下完成塑性变形。典型结构:

  • 放线架: 入口立式 / 卧式料盘, 带张力补偿浮辊;
  • 拉拔主机: N 道卷筒(Capstan)串联, 每道独立伺服驱动;
  • 水箱: 通冷却水 + 乳化液润滑, 抑制温升;
  • 退火段(可选): 直流退火变压器, 改善组织;
  • 收卷段: 单工位或双工位, 配排线机构做工字轮/箱式线架收卷;
  • 电控柜: PLC + 伺服驱动器 + HMI + 测径仪接口。

本案例 年产 8 万吨 ER70S-6 碳钢焊丝:

  • 入口线径 5.5 mm, 出口 1.2 mm, 共 8 道次, 最高线速度 12 m/s (720 m/min);
  • 双工位末端收卷, 满盘切换无需减速(飞剪换盘);
  • 激光测径 ±0.003 mm 在线闭环;
  • 要求 14 轴伺服(8 拉拔 + 2 收卷 + 2 排线 + 2 备用) 在 500 µs EtherCAT 周期内同步。

1.1 工艺矩阵

产品入口出口道次速度年产
碳钢焊丝 ER70S-65.5 mm1.2 mm812 m/s4.5 万吨
不锈钢焊丝 308L4.5 mm1.6 mm68 m/s2.0 万吨
弹簧钢丝 60Si2Mn3.0 mm0.8 mm76 m/s1.5 万吨

1.2 关键工艺指标

指标要求
道间速度同步误差≤ 0.05%
张力控制精度±1.5% 满量程
线径精度±0.003 mm
断线响应< 30 ms
双工位切换时间≤ 2 s(不断线、不减速)
EtherCAT 周期500 µs

2. 项目模块组成

模块功能Darra 组件
工艺对象线速度主发生器斜坡 + 目标线速度FB_Ramp
工艺对象级联电子齿轮 × 8各道次按延伸率级联FB_Gear
工艺对象卷绕对象 × 2收卷锥度张力 + 摆辊闭环FB_Winder
工艺对象排线凸轮 × 2N:1 齿轮比随卷径变化FB_Cam / FB_Gear
工艺对象飞剪 × 1双工位同步换盘FB_FlyShear
工艺对象线径 AI 闭环延伸率修正 ±2%FB_AI_Predict
功能模块断线协调停机8 道次同步减速PRG_BreakStop
功能模块退火调功0~10 V 模拟量 + 电流反馈PRG_Anneal
功能模块润滑管理模具油雾 + 寿命公里数PRG_Lube
数据模块道次 UDT卷筒直径/延伸率/转速TYPE_DRAW_STATION
数据模块收卷工位 UDT卷径/张力/锥度TYPE_WINDER
数据模块配方 UDT材料/速度/延伸率数组TYPE_RECIPE

2.1 扫描周期

程序周期说明
PRG_Main10 ms安全联锁 / HMI 通讯
PRG_LineSync500 µs14 轴电子齿轮级联(同步运动域)
PRG_Winder1 ms收卷卷绕对象
PRG_FlyShear1 ms双工位飞剪时序
PRG_DiaAI100 ms激光测径 AI 闭环
PRG_BreakStop500 µs断线协调停机
PRG_Alarm20 ms三级报警

3. 机械装配架构

  放线架(浮辊)


┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐
│道1 │──│道2 │──│道3 │──│道4 │ (水箱 + 模具 + 润滑)
│15 kW │ │15 kW │ │15 kW │ │15 kW │
└──┬──┘ └──┬──┘ └──┬──┘ └──┬──┘
│ │ │ │
┌──▼──┐ ┌──▼──┐ ┌──▼──┐ ┌──▼──┐
│道5 │──│道6 │──│道7 │──│道8 │
│15 kW │ │15 kW │ │15 kW │ │15 kW │
└──┬──┘ └──┬──┘ └──┬──┘ └──┬──┘
│ │ │ │
└─────────┴───┬─────┴─────────┘

直流退火变压器 50 kVA

激光测径仪(100 Hz)

┌─────┴─────┐
│ 飞剪机构 │
└──┬─────┬──┘
│ │
┌──────▼─┐ ┌─▼──────┐
│ 收卷 A │ │ 收卷 B │ (双工位, 7.5 kW 伺服 + 1.5 kW 排线)
└────────┘ └────────┘

3.1 机械关键部件

  • 拉拔卷筒: 硬质合金衬套, 表面 HRC 60+, 直径 Ф300 mm;
  • 模具: 聚晶金刚石 PCD 拉丝模, 每道对应一副;
  • 水箱: 不锈钢水冷 + 乳化液喷淋, 水温 30~40 ℃;
  • 排线机构: 滚珠丝杠 + 绝对值反馈, N:1 与收卷轴齿轮耦合;
  • 退火段: 直流退火变压器 50 kVA, 铜电极夹在通过 2 个导轮之间;
  • 飞剪: 伺服剪 + 气动夹紧头, 在线切断无需停机。

3.2 传感器布置

  • 张力传感器: 4 路(进料 / 道 4 出 / 道 8 出 / 收卷前), 称重辊 200 N;
  • 浮辊编码器: 2 路(进料 / 收卷前缓冲), 增量 2500 线;
  • 激光测径仪: 1 台, 非接触 ±1 µm, TCP 100 Hz;
  • 断线开关: 8 路机械式, 每道次一个;
  • 退火电流: 霍尔传感器, 4~20 mA;
  • 水箱液位 / 温度: 浮球 + Pt100。

4. 程序架构

PRG_Main (10 ms)
├── 急停 / 门 / 光栅 / 水箱低液位 / 油雾失压 → state=FAULT
└── state 机: IDLE → READY → RUNNING → STOPPING → FAULT

PRG_LineSync (500 µs, 同步运动域)
├── HMI.TargetSpeed × Ramp.Factor → vLineSP
├── vDraw[i] = vDraw[i-1] × (1 + (Elong + Trim)/100)
├── rpmCmd[i] = vDraw[i] / (π × CapstanDia × 0.001) × 60
├── FB_Gear[i] × 8 : MasterVel → Servo_Draw[i]
└── 落后检测(RpmFb vs RpmCmd) > 50 rpm → 打滑报警

PRG_Winder (1 ms)
├── FB_Winder (A/B) —— 卷径 + 锥度 + 摆辊 + 张力前馈 + 转矩外环
└── Trav_Gear (A/B) —— 排线与收卷 1:N

PRG_FlyShear (1 ms)
└── FB_FlyShear : 触发 → 待机盘加速 → 夹紧 → 剪切 → 主控切换

PRG_DiaAI (100 ms)
├── 激光测径 TCP 读 LINE_DIA
├── |diaErr| > 0.003 → FB_AI_Predict 建议末道 ElongTrim
└── Stations[8].ElongTrim := LIMIT(trimAdv, -2.0, 2.0)

PRG_BreakStop (500 µs)
└── 任一 BREAK[i] 或 RpmFb 大偏差 → Gear[].PauseRamp = 200 ms

5. 硬件 BOM

设备型号数量单价(¥)小计(¥)
工控机研华 IPC-610L + i7-12700 / 32 GB / 1 TB112 00012 000
拉拔伺服汇川 SV660N-15KW + ISMH3 电机813 500108 000
收卷伺服汇川 SV660N-7.5KW + ISMH3 电机28 50017 000
排线伺服汇川 SV660N-1.5KW24 5009 000
EtherCAT IO汇川 AM600-ECAT + 32DI/32DO/8AI1 组6 0006 000
张力传感器南京澳强 LM-500N 卫生型43 20012 800
浮辊编码器禹衡 2500 线增量21 2002 400
激光测径仪东莞思锐 SR-DIA ±1 µm128 00028 000
非接触测速仪北京时代 SLT-3000115 00015 000
退火变压器50 kVA 直流退火 0~10 V 调功135 00035 000
安全继电器欧姆龙 G9SX 双回路 SIL212 8002 800
HMI威纶通 cMT3092X 15"16 8006 800
工业交换机汇川 EtherCAT 冗余 8 口21 2002 400
硬件小计257 200
Darra 授权(8 核永久)PLC + Motion + HMI 一体180 00080 000
总计337 200

6. IO 模块配置

6.1 选模块

汇川 AM600-ECAT 耦合器配置:

槽位型号通道用途
0AM600-ECAT耦合器
1AM600-32DX32 DI按钮 / 断线开关 / 门禁
2AM600-32DYT32 DO指示灯 / 润滑阀 / 切刀 / 夹紧
3AM600-8AI-V8 路 0~10 V4 路张力 / 2 路浮辊 / 退火电流
4AM600-4AO-V4 路 0~10 V退火调功 / 备用

6.2 地址映射

地址名称说明
I0.0START启动
I0.1STOP停止
I0.2ESTOP急停(双回路)
I0.3DOOR_OK安全门
I0.4FEED_OK放线料盘到位
I0.5WATER_LO水箱低液位
I1.0~I1.7BREAK[1..8]8 道断线开关
I2.0SPOOL_A_OK收卷 A 到位
I2.1SPOOL_B_OK收卷 B 到位
I2.2TRAV_HOME_A排线 A 原点
I2.3TRAV_HOME_B排线 B 原点
Q0.0RUN_LAMP运行指示
Q0.1ANNEAL_ON退火启用
Q0.2PUMP_ON水泵
Q0.3LUBE_ON油雾润滑
Q1.0~Q1.7LUBE[1..8]模具润滑电磁阀
Q2.0CUT_A收卷 A 剪切
Q2.1CUT_B收卷 B 剪切
Q2.2CLAMP_A收卷 A 夹紧
Q2.3CLAMP_B收卷 B 夹紧
AI0~AI3TEN[1..4]4 路张力反馈
AI4~AI5DANCER[1..2]浮辊位置
AI6ANNEAL_I退火电流
AI7LINE_DIA激光测径(TCP 备用)
AQ0ANNEAL_PWR退火调功 0~10 V

6.3 分工与绑定

  • 主柜 IO(冷却区外): 安全回路 / 主令按钮 / 指示灯 / 张力 AI;
  • 就地柜 IO(水箱旁, IP54): 8 路断线开关 + 8 路润滑阀 + 水箱液位 + 温度;
  • 伺服驱动器: 汇川 SV660N 走 CoE 走 EtherCAT CSV(循环同步速度)模式, 500 µs 刷新;
  • 变量命名: IDE 的 IO 向导支持 "槽位 → 通道 → 业务变量" 一键绑定, 重命名后自动刷全局变量表和 SCL 引用;
  • 工程量换算: AI 通道在向导里配 420 mA / 0500 N 的线性转换, SCL 里直接读物理量, 不再手写 (raw-0)*500/27648

7. 核心数据结构

(* 道次描述 —— 每一道拉拔伺服 *)
TYPE TYPE_DRAW_STATION :
STRUCT
Id : INT;
CapstanDia_mm : REAL; (* 卷筒直径 *)
Elongation : REAL; (* 延伸率 % *)
ElongTrim : REAL; (* 延伸率修正 ±2% *)
GearRatio : REAL; (* 减速比 *)
Linespeed : REAL; (* 当前线速度 m/s *)
RpmCmd : REAL; (* 指令转速 *)
RpmFb : REAL; (* 实际转速 *)
TorqueFb : REAL; (* 实际转矩 % *)
LubeCount : DINT; (* 润滑次数 *)
DieKm : REAL; (* 本副模具已拉公里数 *)
END_STRUCT
END_TYPE

(* 收卷工位 —— 双工位各一个 *)
TYPE TYPE_WINDER :
STRUCT
Id : INT; (* A=1 B=2 *)
State : INT; (* 0=待机 1=运行 2=满卷 3=换盘 *)
CoreDia_mm : REAL;
FullDia_mm : REAL;
CurrentDia_mm : REAL;
StartTension_N : REAL;
TaperFactor : REAL; (* 锥度 *)
TargetTension_N : REAL;
ActualTension_N : REAL;
DancerPos_pct : REAL;
Omega_rpm : REAL;
WeightKg : REAL;
TravStrokeMm : REAL;
END_STRUCT
END_TYPE

(* 工艺配方 *)
TYPE TYPE_RECIPE :
STRUCT
Id : INT;
Material : STRING[16];
InletDia_mm : REAL;
OutletDia_mm : REAL;
DrawCount : INT;
ElongPerPass : ARRAY[1..10] OF REAL;
TargetSpeed_ms : REAL;
AnnealPower : REAL;
StartTension_N : REAL;
TaperFactor : REAL;
ToleranceDia_mm : REAL;
FullWeight_kg : REAL;
END_STRUCT
END_TYPE

VAR_GLOBAL
Stations : ARRAY[1..8] OF TYPE_DRAW_STATION;
Spools : ARRAY[1..2] OF TYPE_WINDER;
Recipes : ARRAY[1..16] OF TYPE_RECIPE;
Recipe : TYPE_RECIPE; (* 当前激活配方 *)
END_VAR

8. 核心程序代码

8.1 道次级联速度同步(电子齿轮)

PROGRAM PRG_LineSync
VAR
i : INT;
vLineSP : REAL;
vDraw : ARRAY[1..8] OF REAL;
rpmCmd : ARRAY[1..8] OF REAL;
pi : REAL := 3.14159265;
Gear : ARRAY[1..8] OF FB_Gear;
END_VAR

(* HMI 设定目标线速度 + 斜坡 *)
vLineSP := HMI.TargetSpeed_ms * Ramp.Factor;

(* 级联计算每道次线速度 *)
vDraw[1] := vLineSP;
FOR i := 2 TO 8 DO
vDraw[i] := vDraw[i-1] *
(1.0 + (Recipe.ElongPerPass[i] + Stations[i].ElongTrim) / 100.0);
END_FOR;

(* 电子齿轮下发 CSV *)
FOR i := 1 TO 8 DO
rpmCmd[i] := vDraw[i] / (pi * Stations[i].CapstanDia_mm * 0.001) * 60.0;
Gear[i](
MasterVel := rpmCmd[i],
Ratio := Stations[i].GearRatio,
PhaseAlign:= TRUE
);
Servo_Draw[i].TargetVelocity := Gear[i].SlaveVel;
Stations[i].RpmCmd := rpmCmd[i];
Stations[i].RpmFb := Servo_Draw[i].ActualVelocity;
Stations[i].TorqueFb := Servo_Draw[i].ActualTorque;
END_FOR;

8.2 收卷卷绕工艺对象(FB_Winder)

PROGRAM PRG_Winder
VAR
winderA, winderB : FB_Winder;
END_VAR

winderA(
(* 过程量 *)
LineSpeed_ms := vLineSP,
DancerPos_pct := AI_Dancer_A,
TensionFb_N := AI_Tension_A,
ActiveFlag := Spools[1].State = 1,

(* 配置 *)
CoreDia_mm := Spools[1].CoreDia_mm,
FullDia_mm := Spools[1].FullDia_mm,
StartTension_N := Recipe.StartTension_N,
TaperFactor := Recipe.TaperFactor,
Inertia_kgm2 := 0.35,

(* PID(可 HMI 调整) *)
Kp := 2.5, Ti := T#0.5s, Td := T#30ms,

(* 输出 *)
TorqueCmd => Servo_Winder_A.TargetTorque,
DiaCalc_mm => Spools[1].CurrentDia_mm,
TensionCalc_N => Spools[1].TargetTension_N
);

(* winderB 参数对称, 用于待机工位 / 换盘后接力 *)

8.3 排线电子齿轮(N:1)

PROGRAM PRG_Trav
VAR
pitch_mm : REAL;
travRatio : REAL;
Trav_A : FB_Gear;
END_VAR

pitch_mm := Recipe.OutletDia_mm * 1.05; (* 节距 = 线径 × 1.05 *)
travRatio := pitch_mm / (3.14159 * Spools[1].CurrentDia_mm);

Trav_A(
MasterVel := Servo_Winder_A.ActualVelocity,
Ratio := travRatio
);
Servo_Trav_A.TargetVelocity := Trav_A.SlaveVel;

8.4 双工位飞剪换盘

PROGRAM PRG_FlyShear
VAR
flyshear : FB_FlyShear;
END_VAR

flyshear(
Trigger := Spools[1].WeightKg >= Recipe.FullWeight_kg,
SrcWinder := 1, (* 当前满卷 *)
DstWinder := 2, (* 待机工位 *)
LineSpeed_ms := vLineSP,
SwitchTimeMs := 1800,
TensionCompMs := 300,

Done => Spools[1].State := 2,
Error => RaiseAlarm(A_SWAP_FAIL, 3)
);

8.5 激光测径 AI 闭环

PROGRAM PRG_DiaAI
VAR
diaErr : REAL;
trimAdv : REAL;
aiAssist : FB_AI_Predict;
END_VAR

diaErr := Recipe.OutletDia_mm - LineDia_mm;

IF ABS(diaErr) > 0.003 THEN
aiAssist(
Model := 'WireDiaRegressor',
Inputs[0] := diaErr,
Inputs[1] := vLineSP,
Inputs[2] := Stations[8].TorqueFb
);
trimAdv := aiAssist.Output[0];
Stations[8].ElongTrim := LIMIT(trimAdv, -2.0, 2.0);
END_IF;

8.6 断线协调停机

PROGRAM PRG_BreakStop
VAR
i, j : INT;
slipLim : REAL := 0.05; (* 5% *)
END_VAR

FOR i := 1 TO 8 DO
IF BREAK[i] OR
ABS(Stations[i].RpmFb - Stations[i].RpmCmd) >
slipLim * Stations[i].RpmCmd THEN
RaiseAlarm(A_WIRE_BREAK, 3);
FOR j := 1 TO 8 DO
Gear[j].PauseRamp := T#200ms;
END_FOR;
flyshear.Trigger := FALSE;
EXIT;
END_IF;
END_FOR;

8.7 退火调功

PROGRAM PRG_Anneal
VAR
pidAnneal : FB_PID;
END_VAR

IF ANNEAL_ON THEN
pidAnneal(
SP := Recipe.AnnealPower, (* 0~100% *)
PV := ANNEAL_I / ANNEAL_I_MAX * 100.0,
Kp := 1.2, Ti := T#3s, Td := T#0s,
OutMax := 100.0, OutMin := 0.0
);
AQ_ANNEAL_PWR := pidAnneal.Out / 100.0 * 27648.0;
ELSE
AQ_ANNEAL_PWR := 0;
END_IF;

9. 运行与调试

9.1 上电流程

  1. UPS 就绪, 工控机上电, Darra Service 加载;
  2. EtherCAT 主站扫描, 期望 14 个伺服 + 1 个 IO 耦合器;
  3. MC_Power 上使能, 每轴读绝对值编码器;
  4. HMI 出现 零点校准 提示, 操作员按顺序 Home 各道次卷筒(以零转矩滑动到机械定位销);
  5. 水箱注水、开乳化液喷淋, 等水温稳定到 30 ℃;
  6. 放线架上新料盘, 手动穿线到各道次, 最后挂到待机工位的轴头;
  7. HMI 进入 READY。

9.2 首件调试

  • 首次启动按 10% 目标速度(1.2 m/s)试跑 10 分钟, 观察各道次转矩和张力;
  • 启用激光测径, 观察 LINE_DIA 与目标 1.2 mm 的偏差, 手动微调道 8 的 ElongTrim ±0.5% 消除系统偏差;
  • 速度从 10% 线性爬到 80% 再到 100%, 每阶段保持 5 分钟;
  • HMI 打开 "8 道同步" 页, 查看 RpmCmd / RpmFb 的 Overlay, 相对差值应 < 0.05%;
  • 飞剪联动验证: 在 HMI 手动给 Spools[1].WeightKg := Recipe.FullWeight_kg - 5, 生产至触发, 观察切换过程 ≤ 2 s。

9.3 常见问题

现象原因处理
某道次转矩负值上游拉得快增大该道 ElongTrim 或检查模具磨损
换盘后张力剧烈抖动新盘 CoreDia_mm 未更新HMI 切换配方时自动写入 Spools[2]
激光测径跳变乳化液溅射污染镜头加装气幕, HMI 切 TCP 平滑 100 Hz → 10 Hz
打滑报警频繁模具快磨损到寿命Stations[i].DieKm, >500 km 更换
退火段电流不到设定变压器风冷不足AnnealPower 10%, 检查风扇

9.4 三级报警

报警级别动作
A_ESTOP全部 MC_Stop + 蒸汽关 + 灯亮
A_WIRE_BREAK8 道同步减速 + 夹紧 + 灯
A_TEMP_OVER降速 50% + 蜂鸣
A_DIA_DEVHMI 弹窗, 提示调模
A_DIE_LIFEHMI 提示, 不停机

10. Darra 功能对照表

业务需求Darra 对应功能所在模块
多道拉拔同步FB_Gear 电子齿轮 × 8IDE → 运动工艺对象
恒张力收卷FB_Winder 卷绕对象 × 2IDE → 运动工艺对象
自动换盘FB_FlyShearIDE → 运动工艺对象
排线同步FB_Gear / FB_CamIDE → 运动工艺对象
线径 AI 闭环FB_AI_PredictIDE → AI 助手
断线协调停机PRG_BreakStop + Gear.PauseRampSCL 标准
退火调功FB_PIDIDE → 工艺对象
润滑管理累积计数 + 寿命提示SCL 标准
配方管理内置配方管理器IDE → 配方
HMIHMI DesignerIDE → HMI
三级报警内置报警系统IDE → 报警
历史曲线本地 SQLite + 云端 InfluxDBDarra Service
远程运维Darra Cloud 加密隧道Cloud
授权按 CPU 核数, 14 轴不额外收费授权管理

11. 项目总结

11.1 实施周期

阶段工时
方案设计 + POC2 周
硬件采购(汇川伺服国产现货)6 周
控制柜组装 + 现场布线4 周
程序开发(PLC + 运动 + HMI)3 周
调试 + 线径 AI 模型训练2 周
验收 + 批量试产1 周
合计18 周

11.2 投产效果

指标设计实测
最高线速度12 m/s12.5 m/s
线径 CPK1.21.85
废品率<0.5%0.15%
双工位换盘时间<2 s1.7 s
连续运行无故障时间>120 h336 h
模具寿命预测准确率89%

11.3 推广价值

  • 本方案在 焊丝 / 弹簧丝 / 切割丝 / 钢帘线 全行业通用;
  • FB_Gear + FB_Winder + FB_FlyShear 三件套可直接复制到 拉管、拉型材、轧钢、冷镦;
  • AI 测径闭环训练数据在 Darra Cloud 沉淀, 后续项目冷启动更快;
  • 一台工控机 + 一根 EtherCAT 环网 = 一整台拉丝机控制系统, 柜体空间下降 60%。

FB_Gear 级联 + FB_Winder + FB_FlyShear, 让 14 轴高端拉丝机在 500 µs 周期内顺畅同步, 这是 Darra 在金属丝材装备领域的核心能力。