(PLC)
3.1 PLC概述
3.2 PLC的基本应用知识
3.3 数控机床 PLC系统的设计及调试
3.4 数控机床 PLC应用实例










(PLC)
3.1 PLC概述
3.1.1 PLC的 特点 与 分类
3.1.2 PLC的 组成 及 工作方式
3.1.4 梯形图 和 语句表
3.1.3 常见的 编程语言










(PLC)
3.1.1 PLC的特点与分类
? PLC的特点
(1)PLC是一种专用于工业顺序控制的微机系统。
(2)PLC是专为在恶劣的工业环境下使用而设计的,所以
具有很强的抗干扰能力。
(3)结构紧凑、体积小,很容易装入机床内部或电气箱内,
便于实现动作复杂的控制逻辑和数控机床的机电一体
化。
(4)采用梯形图编程方式。
(5)PLC可与编程器、个人计算机等连接,可以很方便地
实现程序的显示、编辑、诊断、存储和传送等操作。










(PLC)
3.1.1 PLC的特点与分类
?PLC的分类
PLC的产品很多,型号规格也不统一,可以从结构、
原理、规模等方面分类。从数控机床应用的角度分,可
编程控制器可分为两类:一类是 CNC的生产厂家将数控
装置 (CNC)和 PLC综合起来而设计的“内装
型” (Build—inType)PLC;另一类是专业的 PLC生产
厂家的产品,它们的输入/输出信号接口技术规范、输
入/输出点数、程序存储容量以及运算和控制功能均能
满足数控机床的控制要求,称为“独立型” (Sand—
alone Type)PLC。
内装型 PLC
独立型 PLC










(PLC)
内装型 PLC
?内装型 PLC从属于 CNC装置,PLC与 CNC装置之间的
信号传送在 CNC装置内部即可实现。 PLC与数控机床之
间则通过 CNC输入/输出接口电路实现信号传送。
?特点:
(1)内装型 PLC实际上是 CNC装置带有的 PLC功能。
(2)内装型 PLC系统适用于单机数控设备的应用场合。
(3)内装型 PLC可与 CNC共用 CPU,也可以单独使用一
个 CPU 。
(4)采用内装型 PLC结构,CNC系统可以具有某些高级
控制功能。
世界著名的 CNC系统厂家在其生产的 CNC产品中,
大多开发了内装型 PLC功能。
系统框图










(PLC)
内装型 PLC的 CNC系统框图










(PLC)
?独立型 PLC又称外装型或通用型 PLC。对数控机床而
言,独立型 PLC独立于 CNC装置,具有完备的硬件结构
和软件功能,能够独立完成规定的控制任务。采用独立
型 PLC的数控系统框图。
?特点:
(1)独立型 PLC具有 CPU及其控制电路,系统程序存储器、
用户程序存储器、输入/输出接口电路、与编程器等外
部设备通信的接口和电源等基本功能结构。
(2)独立型 PLC一般采用积木式模块结构或插板式结构,
各功能电路多做成独立的模块或印刷电路插板,具有安
装方便、功能易于扩展和变更的优点。
(3)性能/价格比不如内装型 PLC。
独立型 PLC
系统框图










(PLC)
独立型 PLC的 CNC系统框图










(PLC)
3.1.2 PLC的组成及工作方式
?PLC的组成
微处理器 (CPU)、存储器、用户输人/输出部分、输
入/输出扩展接口、外围设备以及电源等。对于内装型
PLC,CPU、存储器、外围设备、电源等部分一般与
CNC装置共用。










(PLC)
?各组成部分的功能
(1)CPU与通用微机 CPU一样,它是 PLC的核心。
(2)PLC有系统存储器和用户存储器,前者用作存储
监控程序、模块化应用子程序和各种系统参数等。后
者用作存放用户程序。
(3)用户输入/输出部分包括输入/输出接口,输入
/输出控制电路及隔离电路等,用作 PLC与外部输入
/输出设备进行连接。
(4)当主机默认的 I/ O点数不够时,可选配 I/ O扩展
模块,但不能单独使用。
(5)外围设备根据 PLC的型号与厂家的不同,可配置
编程设备、程序写入器、用户程序卡、磁带机、打印
机,A/ D,D/ A、高速计数器,RS232/ 485通信
接口、光纤通信接口等。










(PLC)
3.1.2 PLC的组成及工作方式
?PLC的工作方式
PLC的基本工作方式是顺序执行用户程序,每一时钟周
期执行一条指令。对用户程序的执行一般有循环扫描和
定时扫描两种,扫描过程分为三个阶段,即输入采样阶
段、程序执行阶段和输出刷新阶段 。










(PLC)
?扫描过程
(1)输入采样阶段。 PLC在输入采样阶段以扫描方式顺序读
人所有输入端子的状态,存人输人寄存器,接着转入程序
执行阶段。
(2)程序执行阶段。 PLC在程序执行阶段中顺序对每条指令
进行扫描。先从输人寄存器读人所有输入端子的状态。若
程序中规定要读人某输出状态,则也在此时读入。然后进
行逻辑运算,最后将结果送人输出寄存器。
(3)输出刷新阶段。所有指令执行完毕后,将输出寄存器中
所有的输出状态送到输出电路,成为 PLC的实际输出。
PLC执行完上述的三个阶段称为一个扫描周期。










(PLC)
3.1.3 常见的编程语言
?常见的编程语言
梯形逻辑图 (LAD)
指令语句表 (STL)
计算机的通用语言










(PLC)
3.1.4 梯形图和语句表
?梯形图
(1)梯形图的结构是采用“触点”、“线圈” (或称继电器线
圈 )、“功能图”等图形符号表达输出与输入的逻辑关系。
(2)梯形图是沿从上到下、从左到右,一个梯级一个梯级地
顺序进行工作,当执行至顺序程序结束时,又返回开头重
复执行。
(3)高级顺序和低级顺序。 应把需要迅速处理的信号及快速
响应的顺序编在高级顺序中,如急停、坐标轴极限超程等
逻辑,其他信号则编在低级顺序中。










(PLC)
?绘制梯形图的原则
(1)梯形图按从上到下、从左到右的顺序绘制。继电器
线圈在最右侧,若存在左右的电力轨线,则整个逻辑
图形似梯形。
(2)对电路各元件分配编号。
(3)在梯形图中输入触点用来表示用户输入设备的输入
信号。
(4)在梯形图中,同一继电器的常开、常闭触点可以多
次被使用,不受限制,但同一继电器的线圈只能使用
一次,否则仅最后一次操作有效。










(PLC)
3.1.4 梯形图和语句表
?语句表
(1)基本指令
(2)功能指令:包括有定时器指令、计数器指令、顺序结
束指令、译码指令、旋转指令及乘除运算等。










(PLC)
3.2 PLC的基本应用知识
3,2,1 CNC侧与 MT侧的概念
3,2,2 接口信息
3,2,3 安全互锁










(PLC)
3,2,1 CNC侧与 MT侧的概念
?“CNC侧”包括 CNC系统的硬件软件以及 CNC系统的外
部设备。
?,MT侧”则包括机床的机械部分、液压、气压、冷却、
润滑、排屑等辅助装置,以及机床操作面板、继电器线
路、机床强电线路等。
? MT侧顺序控制的最终对象的数量随数控机床的类型、
结构、辅助装置等的不同而有很大的差别。机床结构越
复杂,辅助装置越多,受控对象数量就越多。相比而言
柔性制造单元 (FMC)、柔性制造系统 (FMS)的受控对象数
量多,而数控车床、数控铣床的受控对象数量较少。










(PLC)
3,2,2 接口信息
?电气接口
? 从信号的流向来看包括输入接口和输出接口
? 从信号的幅值特性来看包括模拟量接口和开关量接口
开关量输入接口
开关量输出接口
模拟量输出接口










(PLC)
开关量输入接口
开关量输入接口等效
电路 ——NPN型
开关量输入接口等效
电路 ——PNP型










(PLC)
开关量输出接口
开关量输出接口等效
电路 ——NPN型
开关量输出接口等效
电路 ——PNP型










(PLC)
模拟量输出接口










(PLC)
3,2,2 接口信息
? 寄存器接口
输入寄存器 (X/ I)
输出寄存器 (Y/ O)
辅助寄存器 (R/ M)
计数器 (C)
定时器 (T)
断电保存寄存器 (B/ M)
用户指令寄存器 (P)
CNC状态寄存器 (F)
CNC控制寄存器 (G)










(PLC)
1、输入寄存器 (X/ I)——保存各输入接口的状态。
2、输出寄存器 (Y/ O)——保存各输出接口的状态。
3、辅助寄存器 (R/ M)。辅助寄存器又称中间寄存器,
用于保存运算中所需要的中间变量的状态。在 PLC内
起传递信号的作用。










(PLC)
4、计数器
计数器 (COUNTER,简称 C或 CNT)有一个时钟脉冲端 (CP),它接
受 PLC内各种软继电器送入的脉冲信号,在图中为输入继电器触点
X00,当 X00由断开到闭合,每变换一次输入一个脉冲信号,计数器
就从当前值减 1,直到计数器当前值为 0时,计数器线圈通电,它的常
开触点闭合、常闭触点断开,这些触点都可以在 PLC内选择使用。










(PLC)
5,定时器
当输入继电器 X00接受到输入信号后,触点 X00接通,即为逻
辑 1状态,定时器线圈通电开始计时,经过设定时间 (图中为 10s)
后,其常开触点 TOO闭合,输出继电器 Y00线圈通电即为 1状态。
定时器 (TIMER,简写 T)的工作时间即延时时间由程序设定。
定时器线圈接受到输入信号后,按数值递减的方式进行。当前数
值变为 0时进行一次输出,即定时器常开触点闭合。










(PLC)
6、断电保存寄存器 (B/ M)。 PLC上电工作时,除去已
闭合的输入条件,其他寄存器的值都为 0。
断电保存寄存器除具有辅助寄存器功能外,还具有
断电保存的功能,即 PLC上电时保持上次断电时的状态。
7、用户指令寄存器 (P)。一般在内装式 PLC中提供,各
寄存器的含义由 PLC定义。
8,CNC状态寄存器 (F)。一般在内装式 PLC中提供,各
寄存器的含义由数控系统软件定义。
9,CNC控制寄存器 (G)。一般在内装式 PLC中提供,各
寄存器的含义由数控系统软件定义。










(PLC)
3,2,3 安全互锁
?定义
若目前有 A,B两个过程,出于安全的目的,当 A动
作后将限制 B的动作,称 A对 B有安全互锁;若 B对 A也有
安全互锁,称 A,B之间安全互锁。
?功能
1、急停
2、限位
3、进给驱动装置
4、主轴单元
5、三相异步电动机换向
6、换刀










(PLC)
3.3 数控机床 PLC系统的设计及调试
3,3,1 PLC系统设计步骤
3,3,2 PLC程序设计
3,3,3 PLC调试










(PLC)
3,3,1 PLC系统设计步骤 -1
1、工艺分析
首先,对被控机床设备的工艺过程、工作特点、控
制系统的控制过程、功能和特性进行分析,估算 I/ O开
关量的点数,I/ O模拟量的接口数量和精度要求,从而
对 PLC提出整体要求。
2.系统调研
根据设备的要求,对初步选定的数控系统进行调研,
了解其所提供的 PLC系统的功能和特点 。










(PLC)
3,3,1 PLC系统设计步骤 -2
3、确定方案
主要是从 PLC的角度对数控系统提出要求,从而确
定数控系统的方案。
在选择独立型 PLC时主要考虑以下 4个因素
?功能范围。
? I/ O点数。
?存储器容量。 根据系统大小不同,选择用户存储器容
量不同的 PLC选择方法主要凭经验估算,其估算法有下
列两种:
(a)PLC内存容量 (指令条数 )约等于 I/ O总点数的 10~ 15
倍;
(b)指令条数= 6× (I/ O)+2× (Tm+Ctr),式中,Tm为
定时器总数,Ctr为计数器总数。有时可在其基础上增
加 20%的裕量。
?处理时间。 PLC从处理一个输入信号到产生一个输出
信号所需的时间称为处理时间。










(PLC)
3,3,1 PLC系统设计步骤 -3
4.电气设计
PLC控制系统的电气设计包括:原理图、元器件清单、电柜布
置图、接线图与互连图。电气设计时特别要注意:
(1)PLC输出接口的类型,是继电器输出还是光电隔离输出等。
(2)PLC输出接口的驱动能力,一般继电器输出为 2A,光隔输出为
500mA。
(3)模拟量接口的类型和极性要求,一般有电流型输出 (一 29mA~
+20mA)和电压型输出 (一 10V~ +10V)两种可选。
(4)采用多直流电源时的共地要求。
(5)输出端接不同负载类型时的保护电路。执行电器若为感性负载,
需接保护电路,电源为直流可加续流二极管,电源为交流可加阻容
吸收电路。
(6)若电网电压波动较大或附近有大的电磁干扰源,应在电源与
PLC间加设隔离变压器、稳压电源或电源滤波器。
(7)注意 PLC的散热条件,当 PLC的环境温度大于 55℃ 时,要用风
扇强制冷。










(PLC)
3,3,2 PLC程序设计
PLC程序设计的常用方法
PLC程序设计的一般步骤
PLC程序设计的一般原则










(PLC)
PLC程序设计的常用方法
1、状态表法是从传统继电器逻辑设计方法继
承而来,经过适当改进,适合于可编程控制器
梯形图设计的一种方法。但状态表法仅适合于
单一顺序问题的程序设计,对于具有并行顺序
和选择顺序的问题就显得无能为力了。
2、功能图法是先将控制要求表达为功能图,
用功能图来说明可编程控制器所要完成的控制
功能,然后由功能图写出逻辑方程,再画出梯
形图或写出指令。
3、流程图法是熟悉计算机高级语言的程序设
计人员常用的程序设计方法。










(PLC)
PLC程序设计的一般步骤
1、若所采用的 PLC自带有程序,应该详细了解程序已
有的功能和对现有需求的满足程度和可修改性。尽量采
用 PLC自带的程序。
2、将所有与 PLC相关的输入信号 (按钮、行程开关、
速度及温度等传感器 ),输出信号 (接触器、电磁阀、信
号灯等 )分别列表,并按 PLC内部接口范围,给每个信
号分配一个确定的编号。
3、详细了解生产工艺和设备对控制系统的要求。画出
系统各个功能过程的工作循环图或流程图、功能图及有
关信号的时序图。
4、按照 PLC程序语言的要求设计梯形图或编写程序清
单。梯形图上的文字符号应按现场信号与 PLC内部接口
对照表的规定标注。










(PLC)
PLC程序设计的一般原则
1、保证人身与设备安全的设计永远都不是多
余的。
2,PLC程序的安全设计,并不代表硬件的安
全保护可以省略。
3、了解 PLC自身的特点。
4、设计调试点易于调试。
5、模块化设计。
6、尽量减少程序量。
7、全面的注释,便于维修。










(PLC)
3,3,3 PLC调试
1、输入程序
2、检查电气线路
3、模拟调试
模拟调试可以采用系统提供的模拟台调试,也可以
在关闭系统强电的条件下模拟调试,例如关闭主轴强电
空开,那么调试中即使 PLC动作有误,由于主轴电动机
不会实际运转,所以也不会引起事故。
4、运行调试
5、非常规调试,验证安全保护和报警的功能
这部分工作一般也分为模拟调试和运行中调试,以
防如果保护功能失效而损坏器件和设备。
6、安全检查并投入考验性试运行










(PLC)
3.4 数控机床 PLC应用实例
主轴系统
车床刀架
过程分析
安全互锁
程序设计
过程分析
安全互锁
程序设计










(PLC)
主轴系统 -过程分析
?主轴的控制包括正转、反转、停止、制动和冲
动等。
?要求:按正转按钮时电动机正转;按反转按钮
时电动机反转;按停止按钮时电动机停止,并控
制制动器制动 2s;按下冲动按钮电动机正转 0.5s,
然后停止;电动机过载报警后正/反转按钮冲动
按钮无效。
电气设计图










(PLC)
电气设计图 器件说明










(PLC)
器件含义










(PLC)
主轴系统 -安全互锁
?在电气安全互锁设计方面,主轴正 /反转在接
触器和继电器分别进行了安全互锁;主轴正/
反转对刀具松进行了安全互锁;急停对主轴运
转进行了安全互锁。










(PLC)
主轴系统 -程序设计
与主轴控制相关的输入/输出寄存器包括:
? 输入寄存器,X1.4——正转
X1.5——反转
X1.6——停止
X1.7——冲动
X8.5——报警
? 输出寄存器,Y5.0——正转
Y5.1——反转
Y5.2——制动
Y5.3——松刀










(PLC)
程序 -1
1,LD X1.4 读取主轴正转按钮
2,OR R0.0 R0.0自锁
3,AND X8.5 无报警
4,ANI Y5.3 刀具未松开
5,AND X1.6 停止按钮未按下 (停止按钮硬件上是常闭连接 )
6,ANI Y5.1 反转无输出
7,ANI Y5.2 主轴未制动
8,OUT R0.0 输出中间变量 R0.0,并自锁
—主轴正转条件都满足,则按下正转按钮后,输出 R0.0并自锁 —
9,LD X1.7 读取主轴冲动按钮
10,OR R0.1 R0.1互锁
11,ANI T1 若 T1计时未完成
12,OUT R0.1 输出 R0.1
13,OUT T1 K5 T1计时 0.5 s
—按下主轴冲动按钮后,R0,1输出 0.5s后关闭 —










(PLC)
程序 -2
14,LD R0.0 读取 R0.0
15,OR R0.1 或 R0.0
16,AND X8.5 无报警
17,ANI Y5.3 刀具未松开
18,AND X1.6 停止按钮未按下
19,ANI Y5.1 反转无输出
20,ANI Y5.2 主轴未制动
21,OUT Y5.0 输出 Y5.0控制主轴正转
—主轴正转条件满足后,R0.0和 R0.1任意一个有输出则输出 Y5.0
控制主轴正转,实现了主轴连续正转和每次按下主轴冲动按钮,
主轴正向冲动 0.5 s的功能 —










(PLC)
程序 -3
22,LD X1.6 读取主轴停止按钮
23,OR Y5.2 主轴制动自锁
24,ANI T2 若 T2计时未完成
25,OUT Y5.2 输出主轴制动
26,OUT T2 K20 T2计时 2s
—按下主轴停止按钮后,Y5.2输出制动主轴 2s后断开 —
27,LD X1.5 读取主轴反转按钮
28,OR Y5.1 主轴反转自锁
29,AND X8.5 报警
30,ANl Y5.3 刀具末松开
31,AND X1.6 停止按钮未按下
32,ANI Y5.0 正转无输出
33,ANI Y5.2 主轴未制动
34,OUT Y5.1 输出 Y5.1控制主轴反转
35,END
—主轴反转条件都满足,则按下反转按钮后,输出 Y5.1并自锁 —










(PLC)
车床刀架 -过程分析
?换刀动作由 T指令或手动换刀按钮启动,换刀过程:
(a)刀架电动机正转;
(b)检测到所选刀位的有效信号后,停止刀架电动机,并
延时 (100ms);
(c)延时结束后刀架电动机反转锁死刀架,并延时
(500ms);
(d)延时结束后停止刀架电动机,换刀完成。
?车床刀架不存在刀具交换的问题,刀具选好后即可以
开始加工,因此,车床的换刀由 T指令 (选刀指令 )完成,
而不需要换刀指令 (M06指令 )的参与。
车床刀架示意图 电气设计图










(PLC)
车床刀架示意图










(PLC)
电气设计图 器件说明










(PLC)
器件含义










(PLC)
车床刀架 -安全互锁
?刀架电动机长时间旋转 (如 20s),而检测不到
刀位信号,则认为刀架出现故障,立即停止刀
架电动机,以防止将其损坏并报警提示。
? 刀架电动机过热报警时,停止换刀过程,并
禁止自动加工。










(PLC)
车床刀架 -程序设计
?自动刀架控制涉及的输入/输出寄存器
X2.7——刀架电动机过热报警输入
X3.0~ X3.3——1~ 4号刀到位信号输入
X30.6——手动刀位选择按钮信号输入
X30.7——手动换刀启动按钮信号输入
Y0.6——刀架正转继电器控制输出
Y0.7——刀架反转继电器控制输出










(PLC)
?PLC程序按定时循环扫描的方式执行,与换刀相关的
程序扫描周期为 16ms,用 plc1_time表示。程序中利用
这一点实现定时 (延时 )功能。
?程序中用到的变量
1,*sys_ext_alm():用于设定外部报警,为 16位二进
制数,每一位代表一个报警,可设定 0~ 15共 16个外部
报警。某位为 1时,相对应的外部报警显示,为 0时则清
除相对应的报警。
2,mod_T_code(0),T指令代码,一般为三位十进制
数,百位表示刀号,个位、十位表示刀偏号。置,-1”
时 T指令完成。
3,T_stage:定义换刀顺序标记的局部变量 (字符型 )。
4,T_stage_dwell:定义换刀延时时间的局部变量 (无
符号整型 )。
5,T_NO:定义所选刀号的局部变量 (字符型 )。










(PLC)
程序 -1
if ((X[2]&0x80)==0) //若电动机过热 (X2.7为 0)
{ *sys_ext_alm()|=4; //则显示 2号外部报警:刀架
//电动机过热
mod_T_code(0)= -1; //强制 T指令完成
return; } //从 T指令处理程序返回到 PLC主程序
(以下简称“返回” )
else //否则
*sys_ext_alm()&= ~ 4; //清除 2号外部报警
T_NO=mod_T_code(0)/ 100; //由 T指令获得所要选
//的刀号
//例如 T121,指选 1号刀,刀偏值取 21号










(PLC)
程序 -2
if(T_stage_dwell>plcl_time) //若设定的换刀延时
//时间未完成
{ T_stage_dwell- =plcl_time; //则延时时间减去本
//程序执行周期的扫描时间
return;} //并且返回
else //否则
T_stage_dwell=0; //清零为下次延时准备
//进入 switch结构,执行换刀顺序的下一步
switch(T_stage) //读取换刀顺序标记
{case 0; //换刀第 0步
Y[0] | =0x40; //输出 Y0.6,刀架正转
break; //退出 switch结构
(以下简称“退出” )










(PLC)
程序 -3
case 1; //换刀第 1步
if((X[3]&0xF)!=(1<<(T_NO- 1)))
{ //若本扫描周期读取的刀位信号不是所选刀
T_stage=0; //则回到换刀第 0步,即保持正转
//继续找刀
T_change_time+=plcl_time; //记录正转时间
If(T_change_time>8 000) //若超过 8s没有找到
//目标刀位
{*sys_ext_alm()| =8; //则显示 3号外部报警换刀超时
Y[0]&=~ 0x40; //停止电动机
mod_T_code(0)= - 1; // T指令强制完成
break;} //退出
else










(PLC)
程序 -4
*sys_ext_alm()&=~ 8; //否则清除 3号外部报警
break; } //退出
Y[0]&=~ 0x40; //否则表示以到达所选刀位,
// Y0.6置零,停止刀架正转
T_stage_dwell=100; //设定停止延时 =100ms
break; //退出
case 2,//换刀第 2步
Y[0]| =0x80; // Y0.7置 1,刀架电动机反转
//锁死刀架
T_stage_dwell=500; //反转时间为 500ms
break; //退出










(PLC)
程序 -5
case 3,//换刀第 3步
Y[0]&=~ 0x80; // Y0.7置 0,刀架电动机停止旋转
mod_T_code(0)= -1; //置 T指令完成标记
break; } //退出
T_stage++; //换刀顺序标记加 1
//若顺利,下面的程序扫描周期中
//待延时时间完成后自动进入换刀顺序过程的下一步
?换刀可以用手动按钮实现,PLC处理程序与上面相似,
只是换刀号,T—NO”的获取方法不是靠 T指令,而是靠
选刀按钮设定,可尝试自己编写车床自动刀架手动换刀
的 PLC程序。