FANUC(发那科)PMC(PLC)基础介绍27:M代码的实现方法
上一节我们介绍了译码器的使用方法,而译码器在数控机床上最常用的一个功能就是用它来制作M代码,比如冷却液的开启和关闭M08,M09,刚性攻丝M29等等。本节,我们就介绍一下M代码是如何在数控系统上实现的。
实现数控系统上M代码的制作一共只需要3步:代码译码,逻辑编程,代码完成信号输出
1、M代码译码:其实M代码译码很简单,套用固定的译码格式,然后输入我们想要制作的代码数和中间地址就可以了,见下图
M代码译码
我们只需要按照需求编辑红色方框里的内容就可以了,按照上图的内容,在加工程序中执行M03时R0.0接通,执行M4时R0.1接通,执行M5时R0.2接通......,执行M08时R0.6接通,执行M09时R0.7接通。
同样的格式,如果我们想要制作M10~M17,只需要重新指定代码号和译码地址就可以了,见下图
M代码译码
2、逻辑编程:当我们加工程序中执行到M代码时,代码所对应的中间地址就会接通,利用这个接通的中间地址,我们就可以完成PLC的逻辑编程。比如我们准备用M08来控制冷却液的开启,用M09来控制冷却液的关闭,冷却液的输出地址是Y0.0,那么冷却液的M代码控制程序如下:
M代码使用
3、M代码完成信号输出:M代码制作和逻辑编程都做好了之后,我们还要给系统一个M代码的完成信号,如果没有完成信号,那么加工程序就会一直停留在M代码行,而无法继续执行后续程序(如果发现程序光标停留在某个M代码行而不继续向下执行时,那一定是这个M代码的完成信号没有接通)。完成信号的输出,我只需要将G4.3接通即可。
M代码完成信号
将以上三部分的PLC程序组合到一起,就是一个完整的M代码制作程序。
PS:在进行M代码译码时,建议大家一定要按代码数字顺序排列号,避免译码地址重复造成PLC的逻辑错误。
FANUC PMC中文英文报警对照表,请收藏备用
对于有的机床编写的报警是英文或者英文的缩写,看起来不明确,
以下是个人整理的对照表,方便人阅读。
T WORD ERROR (T 码错误)
LOW OIL LEVEL (油位低)
SPINPLE FAULT (主轴故障)
SPINDLE ALARM (主轴报警)
EXTERNAL EMG STOP (急停按钮被按下)
AC NOT READY (交流盘未准备好)
SPINPLE LUBE FAULT (主轴润滑故障)
T CODE ERROR (T代码出错,非法T代码)
M CODE ERROR (M代码出错,非法M代码)
SERVO NOT READY (伺服未准备好)
NC NOT READY(NC没准备好)
TURRET FAULT (转塔故障)
TURRET LIMIT (转塔限位)
DC 24V OPEN (直流24断开)
+24V NOT READY(+24V没准备好)
GRAR DRIFT (档位漂移)
PLEASE AXIS RETURN HOME(轴未回零)
PLEASE DRUM RETURN HOME(刀库未回零)
AIRPRESSFAILURE(气压故障)
UNCL TOOL FALL(松刀失败)
AIR PRESSURE DROP (压缩空气压力过低)
CLAMP TOOL FALL(夹刀失败)
DRUM NOT PARKED(刀库未在原值)
X ZERO POINT NOT REACHED (X 轴未回零)
Y ZERO POINT NOT REACHED (Y 轴未回零)
Z ZERO POINT NOT REACHED (Z 轴未回零)
4TH ZERO POINT NOT REACHED (第4轴未回零)
X AXIS OVERTR**L(X轴超限)
Y AXIS OVERTR**L (Y轴超限)
Z AXIS OVERTR**L (Z轴超限)
COUNTER SWITCH REEOR (计数开关故障)
MASTERT RANSFER OVER TEMP (主变压器过热)
Z AXIS NOT AT FIRST REF POSITION (Z轴未在第一参考点)
SPINDLE ORIENTATION FALLURE (主轴定向失败)
TOOL DESENT OR TOOL DATA REEOR (刀具数据错误)
PLEASE UNLOAD THE TOOL ON SPRINELK (请卸下主轴上的刀)
PLEASE LOAD TOOL ON APINDLE (请装上主轴上的刀)
A AXIS UNCLAMP FAIL (A 轴松开失败)
A AXIS CLAMP FAIL (A 轴夹紧失败)
DRUM OUT TO APRONDLEIS FALL (刀库摆向换刀位失败)
MG SWING OVERLOAD(刀库摆动过载)
DRUM BACK PARK IS FALL (刀库摆回原始位失败)
TURRENT MOTOR1 OVERLOAD (刀库移动电机过载)
COOLANT MOTOR OVERLOAD (冷却泵过载)
DRUM ATC FAULT (自动换刀失败)
TOOLS UNLOCKED (刀具未锁紧)
BATTERY ALARM (电池报警)
DRUM POSITION SWITCH ERROR (刀库位置检测开关故障)
DRUM NOW NOT AT PARK (刀库未在原始位置)
IT DANGOU TO MOVE DRUM (刀库禁动)
POT UO FAILOR POT NOT AT UP POSITION (刀套未在水平位)
POT DOWN FAIL (刀套翻下动作失败)
IT IS DANGOUR TO MOVE ARM (机械手禁动)
THE SPINDLE STATU IS ERROR (主轴状态错误)
ARM MOTOR OR ARM SWITCH FALL (机械手或机械手开关故障)
CENTRE LUBRICATION FALL (中心润滑故障)
THE WORK NOT CLAMPED (工件未夹紧)
AUTO TOOL CHANGE FAULT (自动换刀失败)
TOOL DATA OUT OF RANGE (指令刀具号超出范围)
THE ORDER TOOL NOW IN SPINDLE (目标刀具在主轴上)
THE THREE SPINDLE SWITCH FAULT (主轴上的接近开关)
THE CENTRE COOLANT IS LOWER (刀具内冷泵液位过低)
DRUM RETURN 1# POSITION FAULT (刀库自动回零失败)
SPINDLE OVERLOAD (主轴过载)
TURRENT MOTOR OVERLOAD (刀盘转动电机过载)
CHIP CONVEYER OVERLOAD (拉屑器过载)
HARD LIMIT OR SERVO ALARM (硬限位或伺服报警)
NO LUB OIL (无润滑油)
INDEX HEAD UNLOCKED (分度头未锁紧)
MT NOT READY(机床没准备好)
MG OVERLOAD (刀库过载)
LUB EMPTY(润滑无油)
AIR PRESSURE(气压不足)
COOLANT NOT READY(冷却没准备好)
LUBE EMPTY(油雾油位低,润滑油位低)
LUB PRESSURE LOW(润滑压力低)
CONVEY VERLOAD(排屑过载)
LUB OVERLOAD(润滑过载)
LUBE PRESSURE LOW(油雾压力低)
SERIAL SPINDLE ALARM (串行主轴报警)
NC BATTERY LOW ALARM(NC电池低报警)
MAGAZINE MOVE LIMIT SWITCH ERROR
SPINDLE TOOL UNLAMP POSITION LIMIT SWITCH ERROR
MAGAZINE NOT IN POSITION OR SENSOR ERROR
AIR PRESSURE LOW ALARM(气压低报警)
MOTOR OVERLOAD(电机过载)
T CODE > MAGAZINE TOOLS
T CODE < 1 ERROR
5TH AXIS HARDWARE OVERTR**ER LIMIT ERROR
DOOR IS OPENED(开门)
LUB PRESSURE SWITCH ERROR(油压开关错误)
SPINDLE OIL COOLANT UNIT ERROR
SPINDLE LOAD ABNORMAL(主轴负荷异常)
TRANSDUCER ALARM(传感器报警)
BED-HEAD LUBRICATE OFF(床头润滑关闭)
EMG OFF
HYDRAULIC CHUCK PRESS LOW(液压夹头压力低)
HYDRAULIC TAIL PRESS LOW(液压尾座压力低)
LUB 0IL LOW(油压低)
TURRET CODE ERROR(转塔码错误)
TURRET RUN OVERTIME(转塔运行超时)
MANUAL HANDLE INTERRUPT
TRY TO RUN SPINDLE WHILE CHUCK NOT LOCK
TRY TO RUN SPINDLE WHILE TAIL NOT LOCK
SPINDLE NEUTRAL GEAR
MAGAZINE ADJUST
HYDRAULIC NOT RUN
SAFETY DOOR BE OPENED
SAFETY DOOR NOT CLOSE
NOT ALL AXIS H**E GONE BACK REF
IN ADJUST,IGNORE GOING BACK REF
AFTER EXCHANGE TOOL,CYCLE START
ATC MOTOR QF16 OFF
X AXIS IS LOCKED(X 轴被锁定)
Y AXIS IS LOCKED(Y 轴被锁定)
Z AXIS IS LOCKED(Z 轴被锁定)
A AXIS IS LOCKED(A 轴被锁定)
SPINDLE MOTOR FAN QF26 OFF(主轴电机风扇QF26关闭)
关注我们的微信公众号shukongzhpngguo,获取更多数控技术文章。
SPINDLE ORIENTATION INCOMPLETE(主轴定位不完全)
M FUNCTION NOT COMPLETE(M 功能无法完成)
SPINDLE NOT IN GEAR POSITION(齿轮不在主轴位置)
SPINDLE NOT CHANGED TO LOW GEAR(主轴没有变为低档)
SPINDLE NOT CHANGED TO HIGH GRAR(主轴没有变为高档)
MAG NOT BACKWARD
SPINDLE TOOL NOT CLAMP
SPINDLE TOOL NOT UNCLAMP
MAG NOT IN POSITION
MAG DOES NOT ROTATE
MAG DOES NOT STOP RUNNING
A AXIS H**E NOT CLAMPED
A AXIS H**E NOT UNCLAMPED
SET D499=1,”MAG.JOG” SWITCH ON
HYDRAULIC MOTOR QF7 OFF( 液压马达QF7关闭 )
HYDRAULIC TEMPRETURE HIGH( 液压使用温度高 )
HYDRAULIC FILTER BLOCKED(液压过滤器阻止)
HYDRAULIC OIL LEVEL LOW( 液压油位低 )
HYDRAULIC FAN QF8 OFF(液压风扇QF8关闭)
HELIX CONYER QF9 OR QF10 OFF
CHAIN CONYER QF11 OFF
COOLANT MOTOR QF12 OFF(冷却液电机QF12关闭)
COOLNT LEVEL LOW,CYCLE STOP AFTER 20 MINUTES
INNER COOLANT BLOCK(内冷却堵塞)
SPINDLE COOLANT MOTOR QF14 OFF(主轴冷却液电机QF14关闭)
INNER COOLANT QF13 OFF(内冷却液QF13关闭)
MAG MOTOR QF15 OFF
CABINET COOLANT EQUIP QF20 OFF
OIL GATHER QF24 OFF
AIR PRESSURE LOW(低气压)
SPINDLE COOLANT MOTOR FAULT(主轴冷却液电机故障)
LUB.OIL IS LOW(润滑油低)
DOOR OPEN(门打开)
FRONT DOOR(R) OPEN(前门打开)
LEFT DOOR OPEN(左门打开)
LUBRICATION OIL QF23 OFF(润滑油QF23关闭)
LUBRICATION PRESS LOW(润滑油位低)
IN ADJUST,MAG CAN’T EXCHANGE T(在调整,刀库不能交换T)
NOT ALL DOOR CLOSED(门没有全部关闭)
IN M06,MAG NOT READY(在M06,刀库未准备好)
MAGAZINE NOT READY(刀库未准备好)
POCKET NOT HORIZANTAL
IN M06,Z NOT BACK TO 2ND REF
IN M06,Z AXIS NOT IN PSW1
ATC NOT IN ZERO POSITION
SPINDLE ORIENTATION UNCOMPLETE
POCKET NOT HOR./MAG NOT BCKWRD
POCKET NOT VER./MAG NOT FORWRD
UNCLAMP TOOL HAS NOT COMPLETED
CLAMP TOOL HAS NOT COMPLETED
AIM TOOL NO. IS WRONG
MAG NOT BACKWARD
AFTER RETRACT,SET R.T.BACK OFF
Z NOT IN PSW2,FORBID ATC RUNNING
D499 EQUAL 1
MAG.JOG SOFT SWITCH IS ON
Z NOT IN PSW2,FORBID MAG FORWARD
CHEKE SPINDLE MODULE ALARM
OIL WATER SEPARATOR QF24 OFF
SET THE SOFT SWITCH MAG.JOG OFF
SET D499 TO 0 设定D499为0
K PARAM ABOUT MAG SET IS WRONG 关于MAG的K参数设定错误
MECHANICAL BRAKE NOT RELEASED机床抱闸没有松开
MECHANICAL BRAKE IS WRONG 机床抱闸错误
PLEASE ADD LUB.OIL 请加润滑油
PROBE BATTERY VOLTAGE IS LOW 探头电池电压低
PROBE IS ERR 探头错误
PARAMETER WRITE ENABLE(参数写使能)
PMC EDIT ENABLE(PMC编辑使能)
CHECK LUB ROUTIN
SPINDLE GEAR SIGNAL MISS 主轴档位信号消失
T_CLAMPED_SIGNAL MISS T夹紧信号消失
SP OVERRIDE SWITCH DISCONNECTION 主轴倍率开关断路
FEED OVERRIDE SWITCH DISCONNECTION 进给倍率开关断路
THE TOTAL NUMBER OF POCKETS SET ERR
CHANGE T STOPED BECAUSE NO AIR 因为缺少压空交换停止
THE COOLANT WATER TOO LOW,ADD COOLANT WATER AT ONCE 冷却水少立即加水
COOLANT LEVEL LOW,ADD COOLANT WATER 冷却水液位低
PLEASE REPLACE CNC BATTERY QUICKLY 请立即更换CNC电池
SIEMENS常用缩略语
A Output 输出
ASCII American Standard Code for Information Interchange 美国信息交换标准代码
** Preparation for work 运行准备
BA Operating mode 运行方式
BAG Operating mode groups 运行方式组
BB Ready for operation 准备好运行
BCD Binary Coded Decimals 二-十进制
BHG Hand-held terminal 手提终端
BOF User interface 用户接口
CNC Computerized Numerical Control 计算机化数字控制
CP Communication Processor 通迅处理器
CPU Central Processing Unit 计算机中央处理装置
CR Carriage Return 托架折回
CSB Central Service Board(PLC module) 中央维护板,PLC 模块
CTS Clear To Send 发送使能
DAU Digital-Analog Converter 数模转换器
DB Data Block 数据块
DIN German Industrial Standards 德国工业标准
DIO Data Input/Output 数据输入/输出
DRF Differential Resolver Function 差分功能
DRY Dry Run 空运行
DSB Decoding Single Block 译码单段
DSR Data Send Ready 备用输入
DW Data Word 数据字
E Input 输入
EIA-Code Special tape code,number of holes per characters always odd 特殊纸带码,每个字符的孔数为奇数
EPROM Programm memory with fixed program 有固定程序的程序存储器
E/R Controlled Supply and Energy Recovery Module 可控电源和能量恢复模块
ETC ETC key:Extension of the softkey bar in the same menu
ETC 键:同级菜单扩展键
FDB Product designation database 产品指定数据库
FIFO First in First Out 先进先出
FRA Frame module 帧频模块
FRAME Coordinate conversion with the components zero
offset,rotation,scaling,
mirror-imaging 坐标换算,具有零点偏置,坐标旋转,标度功能和镜向功能
FRK Cutter radius compensation 铣刀半径补偿
FST Feed Stop 停止进给
GUD Global User Data 全体用户数据
HMS High-Resolution Measuring System 高分辨率测量系统
HSA Main Spindle Drive 主轴驱动
HW Hardware 硬件
IM Interface Module 接口模块
IM-S/R Interface Module(S=send/R=receive) 接口模块,S=发送/R=接收
INC Increment 步进增量
ISO-Code Special tape code,number of holes per character always even
特殊纸带码,每个字符的孔数为偶数
K1…k4 Channel 1 to Channel 4 通道1 到通道4
KOP Ladder Diagram 梯形图
KV Loop-Gain Factor 增益系数
KUE Transformation Ratio 传动比
LCD Liquid Crystal Display 液晶显示
LED Light Emitting Diode 发光二极管显示
LUD Local User Data 局部用户数据
MB Megabyte 兆字节
MD Machine Data 机床数据
MK Measuring Circuit 测量回路
MDA Manual Data Automatic 手动输入,自动执行
MLFB Machine-readable product designation 机器可识别的产品代号
MMC Man Machine Communication:User interface of the numerical control
system for operation,programming and simulation 人机通讯:系统操作界面,用操作,编程和模拟
MPF Main Program File:NC part program(main program)
NC 零件程序,主程序
MPI Multi Point Interface 多点通讯接口
MSTT Machine control panel 机床控制面板
NC Numerical Control 数字控制
NCK Numerical Control Kernel(numerical krnel with block preparation,
traversing range etc.) 数字控制核心:具有程序段预处理,运行范围等等
NCU Numerical Control Unit 数控单元
NURBS Non Uniform Rational B Spline 非均值有理B样条
NV Zero Offset 零点偏置
OEM Original Equipment Manufacturer 原设备制造商
OP Operator Panel 操作面板
OPI Operator Panel Interface 操作面板接口
PC Personal Comprter 个人计算机
PCMCIA Personal Computer Menory Card International Association 接口协议
PG Programming Device 编程器
PLC Programmable Logic Control 可编程逻辑控制器
PRT Program Test 程序测试
RAM Random Access Memory 随机存取存储器
RISC Reduced Instruction Set Computer 处理器,具有指令组小、通过能力强
ROV Rapid Override 快速修调
RPA R Parameters Active(NCK memoty area for R parameter numbers)
R 参数有效,NCK 中用于R 参数号的存储器区
RTS Request To Send(control signal from serial data interfaces)
发送请求:来自串行接口的控制信号
SBL Single Block 单段
SBL2 Single Block Decoding 译码单段
SEA Setting Data Active(memory area for setting data in NCK)
设定数据有效:用于NCK 中设定数据的存储区
SD Setting Data 设定数据
SKP Skip Block 程序段跳跃
** Signal Module 信号模块
SPF Sub Program File 子程序文件
SPS Programmable Logic Controller 可编程逻辑控制器
SRK Cutter Radius Compensation 刀尖半径补偿
SSFK Leadscrew Error Compensation 丝杠螺距误差补偿
SSI Serial Synchronous Interface 串行同步接口
SW Software 软件
TEA Testing Data Active(with reference to the machine data) 测试数据有效:与机床数据有关
TO Tool Offset 刀具补偿
TOA Tool Offset Active(memory area for tool offset) 刀具补偿有效,用于刀补的存储区
TRAN**IT Transform Milling into Turning(coordinate conversion on
turning machines for milling)
铣床转换为车床:车床坐标换算用于铣削加工
VSA Feed drive(spindle) 主轴进给驱动
V Bit type PLC variable PLC变量类型:位
VB Byte type PLC variable
PLC变量类型:字节
WKZ Tool 刀具
WZ Tool 刀具
WZK Tool offset 刀具补偿
ZOA Zero Offset Active(memory area for zero offsets)
零点偏置有效:零点偏置存储区
相关问答
fanuc机器人速度怎么发给plc?
要将FANUC机器人的速度发送给PLC(可编程逻辑控制器),您可以按照以下步骤进行操作:1.配置PLC通信:首先,确保您的PLC和FANUC机器人之间建立了适当的通信连...
FANUC与三菱系统PLC参数?
FANUC和三菱电机PLC具有不同的参数,主要体现在功能、通信协议和编程语言等方面。FANUCPLC擅长运动控制,提供强大的运动指令集和高精度的运动控制能力。其常...
发那科机器人与plc如何信号交互?
发那科机器人与PLC的信号交互主要通过通信接口和协议实现。发那科机器人通常支持以太网通信,并使用标准的TCP/IP协议进行数据传输。而PLC根据具体型号和厂家,...
如何学习编写FANUCPMC程序?
PMC(ProgrammbleMachineController)相当于内嵌在FANUCNC系统的PLC,如果有一定PLC基础,学PMC没有太大难度;想学好PMC最好有两样东西,PMC编程手册...
发那科td系统编程的步骤?
发那科TD系统编程的步骤如下:先编写PLC程序,再编写HMI界面。使用CX-Programmer编写PLC程序,包括输入输出设置和逻辑控制。然后使用CX-Designer设计HMI界面,...
请问FANUCPLC里面的SUB是怎么用的?详细点,谢谢?
SUB只是个功能代码号,比如定时器是24上升下降沿是5758等。SUB只是个功能代码号,比如定时器是24上升下降沿是5758等。
发那科怎么拷贝plc到系统?
要将PLC程序从发那科PLC拷贝到系统,您可以按照以下步骤操作:首先,确保您的系统与PLC连接正常。然后,使用发那科的编程软件打开PLC程序。接下来,选择“导...
decb是什么指令?
在FANUC梯形图中,“DECB”指令为二进制译码指令,常被用于“M代码”或者“T代码”的数据译码。比如在FANUC梯形图中对M代码进行译码,运用“DECB”功能指令的写...
发那科pmc与西门子plc的区别?哪个好学一点?
都是控制器,PMC专业点,PLC通用些,西门子的数控就是PLC再升级,近似PMC;假如会了西门子PLC,发那科也不好接受,个性太强,原理通了也只是了解,需要好...都...
发那科plc导入系统的方法?
该发那科plc导入系统的方法如下:1、将存储卡插入计算机,打开FAAPTLADDERⅢ程序,建立一个新程序。NewProgram窗口下,选择程序位置,命名,PMCType,选择...