一、PMC是什么?为什么智能车间离不开它?
PMC(Programmable Machine Controller)是发那科数控系统中内置的可编程机床控制器,本质上是专用于数控系统的PLC。它负责处理机床的开关量逻辑、辅助功能(M代码/S代码/T代码)、外围设备(如刀库、冷却泵、排屑器、安全门)的控制,以及和CNC核心的交互。在智能车间中,PMC是连接数控系统与车间自动化设备、MES系统的关键桥梁。
理解PMC,意味着能读懂机床的“神经反射”,能诊断外部设备故障,能通过修改PMC程序实现自动化改造,甚至能通过PMC数据采集实现设备状态监控与质量追溯。
二、PMC程序结构:一张图看懂
发那科PMC程序通常由以下几部分组成:
- 第一级程序(Level 1):每2ms执行一次,用于处理急停、超程、互锁等安全相关逻辑,以及高速信号响应。不建议在此级编写复杂逻辑。
- 第二级程序(Level 2):每8ms或16ms执行一次(取决于系统设定),处理大部分常规逻辑,如M代码译码、刀库动作、润滑控制等。
- 子程序(SUB):可被主程序调用的功能模块,用于重复逻辑(如换刀子程序、吹气子程序),提高程序可维护性。
- 功能指令:发那科PMC提供丰富的功能指令,如定时器(TMR)、计数器(CTR)、译码指令(DEC)、数据传送(MOV)、比较(COMP)、算术运算(ADD/SUB)等,这些是编写复杂逻辑的基础。
PMC程序的执行顺序为:第一级→第二级→子程序(按调用顺序)。调试时务必注意扫描周期对信号响应的影响。
三、PMC与CNC的交互:地址与信号
PMC与CNC之间通过固定的地址区域交换数据,常用的有:
- F地址(从CNC到PMC):如F7.0(自动运行中)、F1.0(复位信号)等,用于CNC向PMC反馈状态。
- G地址(从PMC到CNC):如G8.0(循环启动)、G8.1(进给暂停)等,用于PMC控制CNC动作。
- R地址:PMC内部继电器,用于中间逻辑。
- D地址:数据寄存器,用于存储参数、计数值等。
- X/Y地址:I/O模块的输入/输出点,直接对应物理接线。
实际项目中,务必以机床厂提供的PMC地址表为准,不要依赖通用记忆。例如,同一型号的机床,不同厂商可能将同一功能映射到不同地址。
四、PMC在设备联网与数据采集中的角色
智能车间要求将数控设备接入工业网络,采集设备状态、产量、报警信息、主轴负载等数据,并与MES系统对接。PMC在其中承担以下关键任务:
- 状态信号采集:通过PMC程序读取机床运行模式(手动/自动/编辑)、主轴运转、冷却液状态、安全门开关等信号,并通过CNC的宏变量或以太网接口上传。
- 产量与节拍统计:在PMC中编写计数器逻辑,每完成一个工件循环(通过M30或特定M代码触发)自动累加产量,并记录节拍时间。这些数据可通过FOCAS协议或OPC UA读取。
- 报警信息提取:PMC可检测外部设备故障(如油位低、气压不足),并将报警代码写入CNC的报警历史区,便于远程诊断。
- 质量追溯接口:通过PMC读取加工过程中的关键信号(如刀具到位、夹紧确认),与MES中的工件条码或RFID绑定,实现全流程追溯。
注意:不同发那科系统版本(如0i-F、31i-B5)的PMC功能和地址有差异,联网前必须确认系统版本和PMC类型(内嵌式/独立式)。
五、PMC调试与修改:安全第一
修改PMC程序可能影响机床安全,必须遵循以下步骤:
- 备份原始程序:通过存储卡或以太网将当前PMC程序(.LAD/.PMC文件)完整备份。
- 使用官方软件:发那科LADDER-III是标准编程工具,支持梯形图编辑、在线监控、强制信号等。切勿使用非官方工具。
- 在线监控:连接CNC后,使用LADDER-III的“监控模式”观察信号状态,确认逻辑是否正确。可强制信号测试,但必须确保安全(如断开执行元件)。
- 修改原则:尽量在第二级程序或子程序中修改,避免改动第一级。修改后需进行空运行测试,确认无异常。
- 安全注意事项:禁止修改急停、超程、互锁相关逻辑;修改I/O映射时需核对电气图纸;修改后必须由两人确认。
现场网络规划:如需通过以太网修改PMC,必须使用独立的维护网段,并设置防火墙规则,避免与生产网络冲突。具体IP设置以现场网络规划文档为准。
六、实战案例:PMC助力柔性线刀具管理
某汽车零部件产线使用发那科0i-F系统,配备斗笠式刀库。原PMC程序仅支持手动换刀,无法满足柔性线自动换刀需求。通过以下步骤实现改造:
- 分析原PMC程序,找到刀库旋转、刀套选择、刀具夹紧/松开等逻辑。
- 在第二级程序中增加自动换刀子程序,通过M06代码触发,调用刀库旋转至目标刀号。
- 使用DEC指令译码M06后的T代码,将目标刀号存入D地址。
- 增加刀具寿命计数器,每次换刀后累加,达到设定值后报警提示更换。
- 通过FOCAS协议将刀具号、寿命数据上传至MES系统,实现刀具全生命周期管理。
改造后,换刀时间从15秒缩短至8秒,刀具寿命利用率提升20%。
七、常见问题与注意事项
- PMC程序下载后机床无法启动:检查是否误修改了急停或互锁逻辑,重新加载备份程序。
- 信号监控正常但外部设备不动作:检查I/O模块供电、接线、保险丝,以及PMC输出地址与物理输出点的对应关系。
- 数据采集时PMC地址与FOCAS地址不一致:发那科PMC地址(如R、D)与FOCAS可读的地址映射不同,需查阅系统参数手册确认。
- PMC扫描周期过长导致信号响应慢:减少第一级程序逻辑,避免在第二级中使用过多定时器。
建议:在智能车间项目中,建立PMC程序版本管理机制,每次修改后记录变更日志,并保存在云端或服务器,便于追溯。
八、总结
发那科PMC是数控设备智能化的核心组件,掌握PMC编程与调试技能,能帮助工程师快速定位故障、实现设备联网、对接MES系统,从而提升产线柔性化与数据透明度。建议从阅读机床厂提供的PMC说明书和梯形图开始,逐步积累经验。在智能车间建设中,PMC是连接代码与车间的关键枢纽。



