2. 数控系统基础
数控系统是数控机床的“大脑”,它接收加工程序,经过插补运算与逻辑控制,将指令转化为伺服驱动和开关量信号,从而控制机床完成精密加工。对于PLC程序开发工程师而言,理解数控系统的硬件架构、信号流向和系统特性,是编写可靠、高效PLC程序的前提。本节将系统梳理数控机床的组成、工作原理,并对FANUC、西门子、三菱三大主流数控系统进行对比分析,为后续PLC与NC的交互编程打下坚实基础。
2.1 数控机床的组成:从物理结构到控制逻辑
数控机床是一个典型的机电一体化系统,从控制工程视角可划分为四个层次:人机交互层、数控控制层、执行与检测层、机床本体层。PLC程序开发人员需要重点关注的是控制层中NC与PLC的分工协作关系。
| 组成层次 | 核心部件 | 功能职责 | 与PLC的关联 |
|---|---|---|---|
| 人机交互层 | MDI面板、LCD显示屏、手摇脉冲发生器、操作按钮站 | 程序输入、坐标显示、模式选择(JOG/MDI/AUTO)、循环启停 | 面板信号通过I/O或总线接入PLC,PLC需处理模式切换与按钮互锁 |
| 数控控制层 | CNC装置(主板、插补器)、PLC模块(内装型或独立型) | NC负责插补运算、位置闭环、刀具补偿;PLC负责M/S/T辅助功能译码、机床侧逻辑控制 | PLC与NC通过内部总线交换G信号(NC→PLC)和R信号(PLC→NC) |
| 执行与检测层 | 伺服驱动器、伺服电机、主轴驱动器、编码器、光栅尺 | 将NC指令转化为机械位移和转速,并实时反馈位置/速度信号 | PLC需监控伺服报警、使能控制、抱闸释放等信号 |
| 机床本体层 | 床身、导轨、主轴箱、工作台、刀库、液压/气动系统 | 提供切削加工的执行载体和辅助动作 | PLC直接控制电磁阀、接触器、刀库电机等执行元件 |
M06(换刀指令)时,NC将M代码译码后通过总线传递给PLC,PLC执行刀库选刀、机械手交换、主轴定向等一系列动作,完成后通过R信号通知NC继续执行下一段程序。这种协同机制是PLC程序设计的核心脉络。
2.2 数控系统工作原理:插补与辅助功能的分工协作
数控系统的工作原理可以概括为“译码—插补—伺服执行—反馈修正”的闭环过程。从PLC视角来看,需要深入理解以下三个核心机制:
2.2.1 插补运算与位置控制
CNC装置读取加工程序(G代码),经过译码、刀具补偿计算后,由插补器实时计算出各坐标轴的运动轨迹。插补周期通常为1~8ms,在每个周期内输出位置增量指令给伺服驱动器。PLC不参与插补运算,但需要监控伺服使能、到位信号、跟随误差报警等状态。
2.2.2 M/S/T辅助功能译码与执行
加工程序中的M代码(辅助功能)、S代码(主轴转速)、T代码(刀具号)由NC译码后,通过内部接口传递给PLC。PLC根据预先编写的梯形图或ST程序,执行对应的逻辑动作:
- M代码:如M03(主轴正转)、M05(主轴停止)、M08(冷却开)、M09(冷却关)、M06(换刀)等。PLC需对M代码进行译码、执行、完成反馈(FIN信号)。
- S代码:NC输出模拟电压或数字量给主轴驱动器,PLC需控制主轴档位切换、主轴定向、夹紧/松开等。
- T代码:NC输出刀号给PLC,PLC控制刀库旋转选刀,并确认刀具就位。
2.2.3 信号交互协议(以FANUC为例)
FANUC系统中,NC与PLC通过F(来自NC的信号)和G(来自PLC的信号)地址进行周期性交换。典型信号包括:
F0.5 —— 循环启动中(NC→PLC)
F1.4 —— 报警中(NC→PLC)
F7.0 —— M代码选通信号(NC→PLC)
G5.0 —— 循环启动(PLC→NC)
G8.3 —— 进给保持(PLC→NC)
G4.3 —— 紧急停止(PLC→NC)
2.3 常用数控系统简介:FANUC、西门子、三菱
目前国内机床市场占有率最高的三大数控系统分别为FANUC(发那科)、西门子(SINUMERIK)和三菱(MELDAS/M800系列)。三者在PLC编程环境、指令体系、通信协议上存在显著差异,PLC工程师需要具备“多系统适应能力”。
| 对比维度 | FANUC(如0i-F) | 西门子(如828D/840D sl) | 三菱(如M80) |
|---|---|---|---|
| PLC编程语言 | 梯形图(Ladder)为主,使用FANUC PMC(Programmable Machine Controller) | 梯形图、ST(结构化文本)、SCL,基于TIA Portal或Step7 | 梯形图为主,使用GX Works或MELSOFT系列 |
| NC-PLC接口 | F地址/G地址/Y地址,通过PMC窗口管理 | DB块(数据块)共享,接口信号丰富,支持OB/FB/FC | D地址(数据寄存器)、M地址、X/Y地址 |
| 典型应用领域 | 车削、加工中心、磨床,市场占有率最高 | 高端模具、五轴联动、重型机床、汽车产线 | 钻攻中心、雕铣机、小型加工中心 |
| 通信总线 | FANUC I/O Link(串行总线),PROFIBUS可选 | PROFINET、PROFIBUS-DP | CC-Link、CC-Link IE Field |
| 调试工具 | PMC Ladder Viewer,FANUC Ladder III | PLC变量监控、TIA仿真、HMI集成 | GX Works2/3,MELSOFT内置仿真 |
2.3.1 FANUC系统与PMC编程要点
FANUC的PLC称为PMC(Programmable Machine Controller),其编程基于梯形图,地址体系清晰:X(机床→PMC输入)、Y(PMC→机床输出)、F(NC→PMC)、G(PMC→NC)、R(内部继电器)、D(数据寄存器)。PMC程序按固定周期扫描,典型扫描时间为2~8ms。FANUC提供了丰富的PMC功能指令,如DECB(二进制译码)、CODB(代码转换)、JMPC(条件跳转)等,可大幅简化M代码译码逻辑。
2.3.2 西门子系统与PLC编程要点
西门子SINUMERIK系统采用“NC+PLC”一体化架构,PLC基于西门子S7-300/1200/1500平台,使用TIA Portal进行组态。其显著优势是PLC与NC之间的接口信号通过系统数据块(如DB2、DB3)传递,变量命名直观,支持在线监控和断点调试。西门子PLC程序支持多语言混合编程,对于复杂算法(如刀库路径优化)可使用ST语言实现。
2.3.3 三菱系统与PLC编程要点
三菱M800系列数控系统采用CC-Link IE Field总线连接远程I/O,PLC编程环境为GX Works3,支持梯形图、ST、FB(功能块)。三菱系统的特点是响应速度快、性价比高,在钻攻中心和3C行业应用广泛。其PLC与NC的接口信号通过特殊数据寄存器(如D400~D600)映射,编程时需查阅具体的接口说明书。
2.4 实战场景:数控系统选型与PLC开发准备
假设某企业需要采购一批立式加工中心,用于铝合金零件的高效钻攻加工,要求主轴转速≥12000rpm,换刀时间≤1.5s,并需配备第四轴转台。作为PLC工程师,在系统选型和开发准备阶段应关注以下要点:
- 系统选型分析:钻攻中心对主轴加速时间和换刀速度要求高,三菱M80和FANUC 0i-MF Plus均能满足。若企业已有技术积累偏向FANUC,则选择0i-MF Plus;若追求性价比和CC-Link生态,则选择三菱M80。
- I/O点数估算:根据机床功能配置,列出所有输入/输出信号清单。例如:操作面板按钮约30点输入、刀库到位开关12点、液压阀输出8点、报警灯输出6点等,估算总I/O点数并预留15%~20%余量。
- PLC程序架构规划:建议采用模块化设计,将程序划分为模式管理模块、手动操作模块、自动运行模块、刀库管理模块、报警处理模块等独立程序块,便于调试和维护。
- 接口信号表编制:在编程前,先编制NC-PLC接口信号表,明确每个F/G地址的含义、方向、有效电平,作为编程和后续排障的基准文档。
2.5 常见误区与总结复盘
在数控系统PLC开发中,初学者常犯以下错误,需要特别警惕:
- 误区一:忽视NC-PLC握手时序。M代码执行后未发送FIN信号,或FIN信号持续时间过短,导致NC无法识别。正确做法是:M代码选通后,PLC执行动作,动作完成后置位FIN并保持至少一个扫描周期,待NC撤销选通信号后再复位FIN。
- 误区二:I/O地址分配混乱。未按功能分区规划X/Y地址,导致程序可读性差、排障困难。建议按“操作面板、刀库、液压、冷却、排屑”等功能模块分配地址段。
- 误区三:忽略急停与互锁逻辑。急停回路必须采用硬件常闭触点串联,PLC程序中应设置多重互锁(如主轴旋转与刀具松开互锁、工作台运动与防护门关闭互锁)。
- 误区四:跨系统移植时生搬硬套。不同系统的信号地址、扫描周期、指令功能均有差异,移植后必须逐项验证。