日期:2026-10-14
面向:线束工艺 / 总装 IE、质量工程师、绑扎工位与制造信息化(MES)人员

写在前面
10-13 那篇把胶带缠绕拆成了 SKU、节距 / 重叠窗口、起止点与分支---主干相位------包扎过站之后,线束仍未「固定成总成」 。多数总成还要进入扎带绑扎 / 线束束扎工位:按配方选扎带 SKU,在主干与分支上按规定间距(pitch)与张力 / 扭矩窗口收紧,卡死锁头朝向与防松标记,处理分叉处的先后顺序,再(可选)拍照留证,最后把带序列号的总成交给下游外观或导通复核。
绑扎台上最常见的漏网不是「胶带节距跑了」,而是:
- 张力失控(过紧压伤绝缘 / 护套,过松松脱移位);
- 间距超差(局部过密鼓包、过疏晃动、弯曲处勒痕集中);
- 锁向 / 锁头朝向做错(装车干涉、无法目视复核、尾柄割伤风险);
- 防松标记缺失或错位(返工后无法区分「已复核」与「未复核」);
- 扎带 SKU 混料(耐温 / 阻燃 / 长度 / 头宽等级混用)。
公开工艺与验收实践里,束扎强调「扎带不得永久压伤绝缘」「间距一致」「尾柄齐切」等方法层要求;MES 侧则常见配方版本锁定、张力工具参数、SN 扫码、步骤序列、可选照片证据与拒绝码。本文从软件闸门角度,把扎带绑扎落成可配置的配方、张力窗口、间距窗口、锁向防错、防松标记与过站拒绝码。
文中字段名、表结构、JSON、Python、拒绝码与数值窗口均为示例 ;涉及 IPC/WHMA-A-620 等公开标准时,只归纳行业常见方法层要求,不摘抄条款原文、不编造页码或 OEM 数值。工艺链路上游接 10-13 胶带缠绕;读者不必先读前文也能跟上。本稿不重复胶带节距 / 重叠、成型板路径、插接、拉脱力、压接曲线、导通 / 耐压细节、包装贴标、8D、MSA / 校准或切断剥皮。
一、要求从哪里来(公开实践归纳)
| 来源 | 公开资料中的要点 | 对软件的含义 |
|---|---|---|
| IPC/WHMA-A-620 族(线束组装验收,公开目录 / 二次解读) | 约束装置 / 扎带应用覆盖紧度、损伤、间距等方法层;行业常见要求:束扎应固定线束且不造成绝缘永久压痕;尾柄宜齐切;间距与分叉处另有验收视角 | 张力 / 间距做成配方窗口;压伤与尾柄缺陷走拒绝码;不把未核实的条款号写入闸门 |
| 《汽车线束生产的防错工艺大全》(AI 汽车网转载,2020-08) | 包扎「先分支、后主干、最后集中」;防护材料宜单套配送;相似件外形 / 色标差异;板上限位防错 | 扎带配方编码:SKU、间距、张力档、锁向、相位;MES 校验「扫到的扎带是否属于本配方」 |
| 线束 MES 公开方案中的扫码与电子 SOP | PDA 扫码核对;电子 SOP 推送步骤;工艺变更时 SOP 更新;结果与 SN 绑定后放行 | 绑扎是序列事件;过站必须带 harness_sn 与 tie_recipe 版本 |
说明: 上表是公开文章 / 标准目录的方法归纳,不摘抄厂商产品名与营销数据;下文闸门参数一律标「示例」。
二、胶带缠绕过站 ≠ 扎带绑扎放行
| 维度 | 10-13 胶带缠绕 | 本稿:扎带绑扎 / 束扎 |
|---|---|---|
| 对象 | 胶带 SKU、节距 / 重叠、起止点、相位 | 扎带 SKU、张力 / 扭矩、间距、锁向、防松标记 |
| 典型失败 | 露线、重叠不足 / 过度、起止点错、SKU 混料 | 过紧压伤、过松松脱、间距超差、锁向反、缺防松标记 |
| 防错主手段 | 胶带色标 / 刀架 + 节距样板 + 起止点挡块 | 张力枪档位锁 + 间距样板 + 锁向挡块 / 色标 + 防松笔 / 标签 |
| MES 放行条件 | wrap_recipe 完成并交接 SN |
tie_recipe 版本匹配、SKU 扫码 OK、张力窗口 OK、间距窗口 OK、锁向确认、防松标记确认、相位序列闭合、可选照片、绑定 SN |
| 下游 | 扎带绑扎 / 护壳 | 外观 / AOI、导通复核、包装 |

图1:左侧是物理台上的「领料扫 SKU → 按间距布点 → 张力收紧 → 锁向确认 → 防松标记 → 关键段拍照」;右侧是 MES 对象(配方版本、扎带 SKU、张力窗口、间距窗口、锁向、防松标记、照片证据、SN)。任一序列未闭合,不得记 tie PASS。
三、数据模型:配方、绑扎点、张力窗口、锁向分开建
sql
-- 示例表结构(字段名为作者建议)
CREATE TABLE tie_recipe (
recipe_id VARCHAR(40) PRIMARY KEY,
harness_family VARCHAR(40) NOT NULL,
variant_code VARCHAR(32) NOT NULL,
recipe_rev VARCHAR(8) NOT NULL,
sop_doc_id VARCHAR(40) NOT NULL,
sop_rev VARCHAR(8) NOT NULL,
status VARCHAR(16) NOT NULL, -- DRAFT / RELEASED / FROZEN / OBSOLETE
updated_at TIMESTAMP NOT NULL
);
CREATE TABLE tie_point (
point_id VARCHAR(40) PRIMARY KEY,
recipe_id VARCHAR(40) NOT NULL,
seq_no INT NOT NULL, -- 作业 / 扫码顺序
segment_code VARCHAR(32) NOT NULL, -- 分支或主干段逻辑码
phase VARCHAR(16) NOT NULL, -- BRANCH / TRUNK / JUNCTION / FINAL
tie_sku VARCHAR(32) NOT NULL, -- 扎带物料号
pitch_mm_nom DECIMAL(6,2) NOT NULL, -- 间距名义值(示例)
pitch_tol_mm DECIMAL(5,2) NOT NULL, -- 间距公差(示例)
tension_n_nom DECIMAL(6,2) NOT NULL, -- 张力名义值 N(示例;或用扭矩档)
tension_tol_n DECIMAL(5,2) NOT NULL, -- 张力公差(示例)
lock_orient VARCHAR(16) NOT NULL, -- HEAD_OUT / HEAD_IN / HEAD_UP / HEAD_DOWN 示例
require_mark BOOLEAN NOT NULL DEFAULT TRUE, -- 是否要求防松标记
require_scan BOOLEAN NOT NULL DEFAULT TRUE,
require_photo BOOLEAN NOT NULL DEFAULT FALSE
);
CREATE TABLE tie_tool (
tool_id VARCHAR(40) PRIMARY KEY,
station_id VARCHAR(32) NOT NULL,
tool_type VARCHAR(24) NOT NULL, -- MANUAL_GUN / ELECTRIC / PNEUMATIC 示例
tension_setting VARCHAR(32) NOT NULL, -- 档位或标定码(示例)
cal_due_at DATE NOT NULL, -- 下次校验日(示例字段)
status VARCHAR(16) NOT NULL -- OK / DUE / LOCKED
);
CREATE TABLE tie_run (
run_id VARCHAR(40) PRIMARY KEY,
workorder_id VARCHAR(40) NOT NULL,
harness_sn VARCHAR(40),
recipe_id VARCHAR(40) NOT NULL,
recipe_rev VARCHAR(8) NOT NULL,
station_id VARCHAR(32) NOT NULL,
tool_id VARCHAR(40),
status VARCHAR(16) NOT NULL, -- OPEN / PASSED / REJECTED / HOLD
started_at TIMESTAMP NOT NULL,
closed_at TIMESTAMP
);
CREATE TABLE tie_event (
event_id VARCHAR(40) PRIMARY KEY,
run_id VARCHAR(40) NOT NULL,
point_id VARCHAR(40) NOT NULL,
event_type VARCHAR(24) NOT NULL, -- SCAN_TIE / TENSION / PITCH / ORIENT / MARK / PHOTO / PHASE_DONE
payload_json TEXT,
result VARCHAR(8) NOT NULL, -- PASS / FAIL
reject_code VARCHAR(24),
created_at TIMESTAMP NOT NULL
);
设计要点(示例):
- 配方与绑扎点分离 :ECN 改间距 / 张力只升
recipe_rev,历史 run 仍可追溯旧版; - 张力与间距同时建模:只卡间距不卡张力,仍可能压伤或松脱;
- 锁向与防松标记独立字段:可被 poka-yoke / 拍照抽检;
- 工具状态入闸:超期未校验的张力枪可锁站;
- 事件流不可改写:FAIL 也落库,便于返工与 SPC。
四、闸门一:扎带 SKU 与配方版本
混料是绑扎台高频问题:耐温等级、阻燃、长度、头宽、颜色相近时,肉眼易错。闸门顺序建议:先锁配方版本 → 再扫扎带 SKU → 再允许进入绑扎点。
python
# tie_sku_gate.py ------ 示例:SKU 与版本闸门
from dataclasses import dataclass
@dataclass
class TieRecipe:
recipe_id: str
recipe_rev: str
status: str
allowed_skus: set[str]
@dataclass
class ScanEvent:
harness_sn: str
station_id: str
tie_sku: str
recipe_id: str
recipe_rev: str
REJECT_SKU = "TIE_SKU_MISMATCH"
REJECT_REV = "TIE_RECIPE_REV"
REJECT_STATUS = "TIE_RECIPE_NOT_RELEASED"
def admit_tie(scan: ScanEvent, recipe: TieRecipe) -> str:
if recipe.status not in ("RELEASED", "FROZEN"):
return REJECT_STATUS
if scan.recipe_id != recipe.recipe_id or scan.recipe_rev != recipe.recipe_rev:
return REJECT_REV
if scan.tie_sku not in recipe.allowed_skus:
return REJECT_SKU
return "PASS"
配套 poka-yoke(示例):料盒色标与扎带头色环一致;错误 SKU 的 RFID / 条码在扫码枪响红灯且 MES 不给下一步。
五、闸门二:张力 / 扭矩窗口
行业常见验收视角:束扎应固定线束,且不得在绝缘 / 护套上留下永久深压痕 (IPC/WHMA-A-620 族公开解读中的方法层归纳,非条款摘抄)。落到软件,用张力窗口而不是「手感拧紧」。
python
# tension_window.py ------ 示例:张力判定
from dataclasses import dataclass
@dataclass
class TensionSample:
point_id: str
tension_n: float
jacket_deform: bool # 目视/抽检:是否永久压痕(示例布尔)
@dataclass
class TensionWindow:
tension_nom: float
tension_tol: float
REJECT_TENSION = "TIE_TENSION_OOW"
REJECT_DEFORM = "TIE_JACKET_DEFORM"
REJECT_TOOL = "TIE_TOOL_LOCKED"
def check_tension(sample: TensionSample, win: TensionWindow, tool_ok: bool) -> str:
if not tool_ok:
return REJECT_TOOL
if abs(sample.tension_n - win.tension_nom) > win.tension_tol:
return REJECT_TENSION
if sample.jacket_deform:
return REJECT_DEFORM
return "PASS"
采集方式(示例,非强制):
- 手动枪固定档位 + 首件对照样件;
- 电动 / 气动枪回传张力或档位码到 MES;
- 关键段强制
require_photo+ 抽检压痕。
数值一律示例,例如名义张力 50 N、公差 ±8 N------以你们 PFMEA / 客户规范 / 工具标定为准;勿把示例当成 OEM 官方数。

图2:张力 / 间距双窗口;锁向枚举;防松标记确认;错误 SKU 与超窗直接拒绝码。
六、闸门三:间距(pitch)窗口
扎带间距影响局部应力集中与晃动。过密易鼓包、干涉护壳;过疏则线束在振动环境下移位。公开实践要求间距一致;落到软件,与胶带节距类似------用窗口。
python
# pitch_window.py ------ 示例:间距判定
from dataclasses import dataclass
@dataclass
class PitchSample:
point_id: str
pitch_mm: float
@dataclass
class PitchWindow:
pitch_nom: float
pitch_tol: float
REJECT_PITCH = "TIE_PITCH_OOW"
def check_pitch(sample: PitchSample, win: PitchWindow) -> str:
if abs(sample.pitch_mm - win.pitch_nom) > win.pitch_tol:
return REJECT_PITCH
return "PASS"
数值示例:名义间距 80 mm、公差 ±10 mm(示例)。分叉处可单独设更紧窗口,不必全线同一公差。
七、闸门四:锁向防错
锁头朝向做错会导致装车干涉、无法从统一视角复核、以及尾柄外露割伤风险。物理上用挡块 / 色标 / 样板;MES 上要求每点确认 lock_orient。
python
# orient_gate.py ------ 示例:锁向
from dataclasses import dataclass
ALLOWED = {"HEAD_OUT", "HEAD_IN", "HEAD_UP", "HEAD_DOWN"} # 示例枚举
@dataclass
class OrientHit:
point_id: str
lock_orient: str
@dataclass
class OrientSpec:
lock_orient: str
REJECT_ORIENT = "TIE_ORIENT_MISMATCH"
REJECT_ORIENT_UNK = "TIE_ORIENT_UNKNOWN"
def check_orient(hit: OrientHit, spec: OrientSpec) -> str:
if hit.lock_orient not in ALLOWED:
return REJECT_ORIENT_UNK
if hit.lock_orient != spec.lock_orient:
return REJECT_ORIENT
return "PASS"
尾柄齐切(flush cut)可作为同一事件的附加布尔字段(示例:tail_flush=true),失败码可用 TIE_TAIL_PROTRUDE。
八、闸门五:防松标记
防松标记(油漆笔、色点、标签)不是装饰:它是「本点已按窗口收紧并复核」的现场证据。返工撕掉旧扎带后必须重打标记 ;MES 上要求 require_mark=true 的点必须有 MARK 事件。
python
# mark_gate.py ------ 示例:防松标记
from dataclasses import dataclass
@dataclass
class MarkHit:
point_id: str
mark_present: bool
mark_code: str | None # 可选:色点编码 / 标签码
@dataclass
class MarkSpec:
require_mark: bool
expected_code: str | None
REJECT_MARK_MISS = "TIE_MARK_MISSING"
REJECT_MARK_CODE = "TIE_MARK_CODE"
def check_mark(hit: MarkHit, spec: MarkSpec) -> str:
if not spec.require_mark:
return "PASS"
if not hit.mark_present:
return REJECT_MARK_MISS
if spec.expected_code and hit.mark_code != spec.expected_code:
return REJECT_MARK_CODE
return "PASS"
九、闸门六:相位序列与过站关闭
与胶带缠绕相同的工艺直觉------先分支、后主干、分叉收口、最后集中------在扎带绑扎上同样成立。先扎主干再补分支,分叉处只能剪开返工。
python
# phase_and_close.py ------ 示例:相位 + 过站关闭
from dataclasses import dataclass
PHASE_ORDER = ["BRANCH", "TRUNK", "JUNCTION", "FINAL"] # 示例
def assert_phase(prev: str | None, nxt: str) -> str:
if prev is None:
return "PASS" if nxt == "BRANCH" else "TIE_PHASE_SKIP"
i, j = PHASE_ORDER.index(prev), PHASE_ORDER.index(nxt)
if j < i:
return "TIE_PHASE_BACKWARD"
if j > i + 1:
return "TIE_PHASE_SKIP"
return "PASS"
@dataclass
class TieRunState:
recipe_rev_ok: bool
all_points_pass: bool
phase_closed: bool
photos_ok: bool
tool_ok: bool
harness_sn: str | None
REJECT_PHOTO = "TIE_PHOTO_MISSING"
REJECT_SN = "TIE_SN_MISSING"
REJECT_INCOMPLETE = "TIE_INCOMPLETE"
REJECT_TOOL = "TIE_TOOL_LOCKED"
def close_tie_run(st: TieRunState) -> str:
if not st.harness_sn:
return REJECT_SN
if not st.tool_ok:
return REJECT_TOOL
if not st.recipe_rev_ok or not st.all_points_pass or not st.phase_closed:
return REJECT_INCOMPLETE
if not st.photos_ok:
return REJECT_PHOTO
return "PASS"
过站关闭后:写 tie_run.status=PASSED,绑定 harness_sn,向下游外观 / 导通工位发出「绑扎完成」事件。FAIL 必须带拒绝码,禁止手码放行。

图3:OPEN → 逐步事件 → PASSED / REJECTED / HOLD;拒绝码覆盖 SKU、版本、张力、间距、锁向、防松标记、相位、照片、工具、SN。
十、拒绝码一览(示例)
| 拒绝码 | 含义 | 典型处置 |
|---|---|---|
TIE_SKU_MISMATCH |
扎带 SKU 不属于本配方 | 换料、扫码重试 |
TIE_RECIPE_REV |
配方版本与工单不一致 | 拉最新 RELEASED 配方 |
TIE_RECIPE_NOT_RELEASED |
配方未发布 | 工艺签发后再开工 |
TIE_TENSION_OOW |
张力超窗 | 调档 / 重扎 / 培训 |
TIE_JACKET_DEFORM |
绝缘永久压痕 | 降张力、返工、评估线缆 |
TIE_PITCH_OOW |
间距超窗 | 按样板重布点 |
TIE_ORIENT_MISMATCH |
锁向不匹配 | 调整锁头朝向 |
TIE_ORIENT_UNKNOWN |
锁向枚举非法 | 检查 SOP / PDA 选项 |
TIE_TAIL_PROTRUDE |
尾柄未齐切 | 齐切后复核 |
TIE_MARK_MISSING |
缺防松标记 | 补打标记 |
TIE_MARK_CODE |
标记编码不匹配 | 换规定色点 / 标签 |
TIE_PHASE_BACKWARD / SKIP |
相位倒序或跳步 | 按 SOP 回到正确相位 |
TIE_PHOTO_MISSING |
缺必填照片 | 补拍 |
TIE_TOOL_LOCKED |
张力工具未校验 / 锁站 | 送检后解锁 |
TIE_SN_MISSING |
未绑定总成 SN | 先绑 SN |
TIE_INCOMPLETE |
步骤或相位未闭合 | 补齐事件 |
十一、上线清单(可直接贴进变更单)
- 配方版本 :
tie_recipeRELEASED / FROZEN;工单带recipe_rev; - SKU 闸门:允许清单 + 扫码;料盒色标 poka-yoke;
- 张力窗口:工具档位 / 回传值;压痕抽检;超窗拒绝码;
- 间距窗口:样板或卡尺;关键段可更紧公差;
- 锁向 :每点
lock_orient;尾柄齐切布尔; - 防松标记 :
require_mark点强制 MARK 事件;返工重打; - 相位序列:BRANCH → TRUNK → JUNCTION → FINAL;禁跳步;
- 工具状态 :
tie_tool.cal_due_at超期锁站; - 照片证据 :
require_photo段强制;照片与 SN / point 绑定; - 过站关闭:缺 SN / 未闭合 / 缺照片 / 工具锁不得 PASS;
- 追溯:事件流只追加;返工开新 run 或子事件,不删 FAIL;
- 与上游交接:仅接受胶带缠绕 PASSED 且 SN 有效的总成(示例策略);
- 培训与样件:每班首件对照间距样板、张力档与电子 SOP 锁向图。
十二、和「凭手感扎紧」的差别
| 维度 | 凭经验绑扎 | 配方 + MES 闸门 |
|---|---|---|
| 扎带选择 | 目视拿料 | SKU 扫码 + 版本锁 |
| 张力 | 手感 | 窗口 + 压痕拒绝码 |
| 间距 | 目测 | 窗口 + 样板 |
| 锁向 | 师傅口头 | 枚举确认 |
| 防松标记 | 可有可无 | 必填点绑定事件 |
| 工具 | 随便拿一把枪 | 校验期 + 锁站 |
| 放行 | 口头 OK | 事件闭合才 PASS |
胶带缠绕把线「护成可装车的外皮」;扎带绑扎把线「固定成可振动、可装车的总成」。二者之间少一道软件闸门,返工就会从压伤护套或松脱移位开始,一路烧到外观与客户审核。先把 SKU、张力窗口、间距、锁向与防松标记做成可配置能力,再谈更高的自动绑扎设备。
十三、参考资料
- IPC/WHMA-A-620 族公开目录 / 二次解读(如 electronics.org TOC、行业手册对 tie wrap tightness / damage / spacing 的方法层归纳)------取用「束扎应固定且不永久压伤绝缘、间距与尾柄齐切」等常见要求;不摘抄条款原文、不编造页码或数值
- 《汽车线束生产的防错工艺大全》,AI 汽车网转载(2020-08-26)https://auto.jgvogel.cn/c/2020-08-26/1053976.shtml ------ 取用包扎顺序、单套配送、相似件差异与防错限位等公开工艺归纳
- 线束 MES 扫码 / 电子 SOP 公开方案描述 https://www.orbitmes.com/news/IndustryNews/1292.html ------ 取用方法层扫码核对、SOP 推送、SN 绑定;忽略产品营销数字
- 本系列前文(box 内):2026-10-13-wire 胶带缠绕(上游);2026-10-12-wire 成型板布线;导通 / 外观 / 包装等主题本稿不展开
(正文闸门参数、表结构与 Python 均为作者示例;以工厂 PFMEA 与客户规范为准。)