资源描述
可编程控制器
一、 基本要求
1、了解可编程控制器的结构与工作原理;
2、理解常用型号的PLC的功能与特点,以及指令系统;
3、了解用指令对常用PLC控制系统进行编程;
4、了解程序写入、修改、调试的方法。
二、阅读指导
可编程控制器(PLC)是专门为在工业环境下应用而设计的数字运算操作的电子装置,通过编程来控制各种类型的机械或生产过程。它能完成逻辑运算、顺序控制、定时、计算和算术操作,它另具有数字量与模拟量的输入输出功能,是一种工业控制用的专用计算机.它具有可靠、易操作、灵活等特点,是通用计算机和继电器系统所无法比拟的。它由硬件和软件系统两大部分组成。
1、 可编程控制器的结构:
可编程控制由主机、输入输出接口及外部设备组成。
(1)、主机:由中央控制单元、存储器等部分组成。
微处理器是可编程控制的运算控制中心,主要是接收和存储输入的程序和数据;接收和存储现场输入的状态信息,进行逻辑、顺序运算、计时、计数和算术运算;诊断系统错误,执行程序输出运算结果等。
存储器是可编程序控制器存放系统程序、用户程序和运行数据的单元。它包括只读存储器ROM和随机读写存储器RAM。只读存储器存储的内容在其制造过程中确定,不允许修改。它是用来存放厂家编制的系统管理程序,用户指令解释程序等组成的系统程序。RAM是用户程序存储器,当供电中断或新的内容被写入时,它所存储的内容会丢失,因此在PLC中要装有备用电池,来保护用户程序。
(2)、输入输出接口(I/O接口)是可编程控制器与工业控制现场设备之间的连接部件。在输入输出单元中配有电平变换、光电隔离和阻容滤波等电路,具有较好的抗干扰性。I/O接口包括开关量I/O接口和模拟量I/O接口等。
(3)、外部设备:它包括编程器、彩色图形显示器、打印机等。
编程器:是实现人机对话的重要设备,它不仅可以对用户的程序进行输入、编辑、而且用户可以通过它监测和跟踪程序的运行状况,实现对程序的总体调试。
另外,也可借助编程软件、仿真软件等通过个人计算机来进行编程和调试。
2、可编程控制器的工作原理:以循环扫描方式工作,每个扫描周期分为以下五步。
(1)、输入信号和读入:在每个扫描周期的开始,首先读入连接着该PLC的各输入信号的当前位,并把这些值依次写入输入映像区。
(2)、程序的执行:PLC在每个扫描周期中,都从主程序的第一条指令开始执行,直至主程序结束为止,其中子程序是主程序中的“调用”指令来调用的。如果在主程序中开放了中断,则在执行主程序的任意时刻产生中断请求时,可随时得到响应。
(3)、通讯的处理:PLC对通讯端口处理,是在每个扫描周期中定时执行的,以
便处理数据的传输等事务,如果系统没有接通讯模块,则自动跳过这个步骤。
(4)、PLC内部事务处理:PLC定期检查系统中系统程序和用户程序区,以及检查I/O模板的状态,即内部的硬件系统。
(5)、输出信号的刷新:PLC在执行用户程序的过程中,只把计算所得的输出信号存入输出映像区,而不直接送到输出节点上,只有在每个扫描周期的最后一步,才统一将输出映像区中的输出信号同时送到输出节点上。
3、可编程控制的指令系统:
PLC的指令是指挥PLC执行一定操作的命令,它包括梯形图语言、指令语言等。对于不同厂家和型号的PLC指令系统各不相同,现以日本OMRON公司C200HPLC的指令为例,进行说明。
表16.1 OMRON C200H指令一览表
指令
梯形图
注释
编程元件
读取指令
LD
B
以常开触点B开始一行新程序
B:IR,SR,HR,AR,LR,TC,TR
LDNOT
B
以常闭触点B开始一行新程序
B:IR,SR,HR,AR,LR,TC
“与”指令
AND
B1 B
将两常开触点串联
B:IR,SR,HR,AR,LR,TC
“或”指令
OR
B1
B
将两常开触点并联
B:IR,SR,HR,AR,LR,TC
“或非”指令
OR NOT
B1
B
并联常闭触点
B:IR,SR,HR,AR,LR,TC
“与非”指令
AND NOT
B1 B
串联常闭触点
B:IR,SR,HR,AR,LR,TC
“块串”指令
AND LD
将两程序块串联起来
“块并”指令
OR LD
将两程序块并联起来
输出指令
OUT B
B
将运算结果输出
B:IR,HR,AR,LR,TR
OUT NOT B
B
将运算结果取反后输出
B:IR,HR,AR,LR
结束指令
END(01)
END(01)
程序结束
指令
梯形图
注释
编程元件
分支指令
IL(02)
分支结束指令
ILC(03)
IL(02)
ILC(03)(01)
当分支指令所在梯级条件满足时,将按照没有分支和分支结束的情况正常进行;反之,将被跳过。
跳转指令
JMP(04)
跳转结束指令
JME(05)
JMP(04)IL(02)
JME(05)ILC(03)ND(01)
当执行条件满足时,JMP n与JME n之间的程序执行。
非零跳转编号在程序中只能使用一次,而JMP00与JME00可使用多次。
JMP n和JME n,n是00~99任何二位数
锁存指令
keep(11)
keep(11)
B
S
R
S为置位信号,使B为“1”
R为复位信号,使其为“0”
复位优先
B:IR,AR,HR, LR
定时器指令
TIM
高速定时器指令 TIMH
TIM
N
TIMH
N
SV
SV
TIM的基本延时单位为0.1S,延时时间为SV×0.1S。
TIMH的基本延时单位为0.01S,延时时间为SV×0.01S。
N:定时器编号
SV(设定值):(0000~9999)IR,HR,AR,LR,DM,#,﹡DM
计数器指令
CNT
CP
R
CNT
N
SV
CP为计数脉冲
R为清0及复位端
N:定时器编号
SV(设定值):(0000~9999)IR,HR,AR,
LR,DM,#
SV一般为立即数
可逆计数器指令
CNTR
N
SV
CP(+)
CP(-)
R
当CP(+)从“0”跳变到“1”时,计数器值加1;
当CP(-)端从“0”跳变到“1”时,计数器值减“1”;
当CP(+)与CP(-)信号同时到达时,计数器不计数;
R为“ON”时,当前值清“0”
N:定时器编号
SV同CNT指令
上微分指令
DIFU(13)
下微分指令
DIFD(14)
DIFU(13)B
DIFD(14)B
DIFU(13):在输入信号上升沿时,输出一个脉冲宽度为一个扫描周期的脉冲信号。
DIFD(14):在输入信号的下降沿时,输出一个脉冲宽度为一个扫描周期的脉冲信号。
B:IR, AR,HR,LR
指令
梯形图
注释
编程元件
移位寄存器
指令SFT(10)
SFT(10)
ST
E
IN
SP
R
IN:数据输入端
SP:移位脉冲输入端
R:复位端
ST:开始通道
E:终止通道
ST≤E
在移位脉冲的上升沿触发,进行向左移一位的操作。移位采用非循环方式。
ST/E:IR,HR,AR,LR
数据比较指令CMP(20)
CMP(20)IL(02)
CP1
CP2
CP1,CP2是数据存放的两个通道,但两个通道不能都是直接数。
当比较条件满足时,CP1 与CP2进行比较
当CP1 >CP2时,25505置“1”
当CP1 =CP2时,25506置“1”
当CP1 <CP2时,25507置“1”
CP1 /CP2:IR,SR,HR,AR,LR,TC,DM,#
数据传送指令MOV(21)
MOV(21)
S
D
MOV(21)/MVN(22):当输入条件满足时将源地址通道S或16位常数的数据/数据取反运算传到目的地址通道中。
S:IR,SR,HR,AR,1R,TC,DM,#
D:IR,HR,AR,LR,DM
数据反相传送指令MVN(22)
MVN(22)
S
D
BCD数据的加运算指令ADD(30)
ADD(30)
S1
S2
D
ADD(30)/SUB(31):
将源地址S1通道中的BCD数据与S2通道中BCD数据相加/相减,运算结果放在目的地址D通道,有进位/借位时,CY置1
S1,S2:IR,SR,HR,AR,LR,TC,DM,*DM,#
D:IR,HR,AR,LR,DM,*DM
BCD数据的减运算指令
SUB(31)
S1
S2
D
指令
梯形图
注释
编程元件
数据交换指令XCHG(73)
XCHG
D1
D2
将D1通道内的数据与D2通道内的数据交换
D1 /D2:IR,HR,AR,LR,TC,DM,﹡DM
BCD数转换二进制数的指令BIN(23)
BIN(23)
S
D
将源地址S通道的BCD数变换为16位二进制数,并将变换后的二进制数存放在D通道中
S:IR,SR,HR,AR,LR,TC,DM,*DM
D:IR,HR,AR,LR,DM,*DM
二进制数转换为BCD数的指令BCD(24)
BCD(24)
S
D
将源地址S通道的16位二进制数变换为4位BCD数,并将变换后的BCD存放在通道D中
注:还有一些指令如WSFT(16) BSET(71),MDVB(82)等指令就不一一列举了。
4、 PLC编程思路和技巧
(1)、编程思路
(ⅰ)、熟悉被控制系统的整个工过程。在编程程序前,应掌握整个工艺过程的控制要求和功能,绘制控制流程图。
(ⅱ)、确定系统输入元件(如按钮、行程开关、变送器等)和输出元件(如继电器、电磁阀、接触器、指示灯等)的型号。
(ⅲ)、根据控制系统要求,确定出PC的输入/输出量的类型和点数,确定PLC的型号和配置。
(ⅳ)、选取你熟悉的PLC型号,具体给每个输入/输出点分配元件号,并留有一定余量,列出是常开触点,还是常闭触点。
(ⅴ)、设计出PC的外部硬件接线图及其它与之相关的电气部分的原理图。
(ⅵ)、画出程序结构方框图和功能表图。
(ⅶ)、应用自己熟悉语言,如梯形图、指令等语言进行编程。
(ⅷ)、将设计好的程序写入PLC,并逐步进行检查。用钮子开关按钮等在实验室进行模拟。各输出量的信号可通过PLC的输出的发光二极管来调试,不需按实际负载。
(ⅸ)、调试好的程序定型,在现场进行联调。
(2) 编程技巧
(ⅰ)、可编控制器的输入接点在替代了继电器的输入接点,继电器的常闭接点可用可编程控制器的常开接点替代,这时需使用Keep指令,将常开接点接入R端。
(ⅱ)、只用一个按钮的控制电路。
普通的起动,保持、停止电路一般需用起动和停止两个按钮,但在PLC控制中可用一个按钮,通过00000控制00500的通断。
程序如下
DIFU00100
01001
00500
00000
01000
01000
01001
00500
00500
图16.1
按下按钮,00000接通,00100的窄脉冲使00500接通并保持,再按一次此按钮,00100的管脉冲使01001接通,01001的常闭触点使00500断开。
(ⅲ)、对特定位的置位和清零可以用上电常开或常闭的专用继电器触点25313和25314直接对特定位置位和清零。
(ⅳ)、通/断状态要求相同的两个负载可以并联后,共用一个输出点,这样可以减少PLC输出点数。
三、例题解析
例16.1 运用PLC实现长延时
解:1:PLC中定时器指令允许的最大时间为999.9s,所以在要求长延时程序设计中选用定时器和计时器共同来实现。
00000
TIM001
TIM
001
#0600
TIM001
CP
CNT
003
#0060
00000
R
01000
CNT003
END
图16.2
当输入信号00000闭合后,TIM001开始计时,计时时间为1min时,计数器计数1次,当到达60次,即60×1=60min=1hour 01000输出,见图16.2。
例16. 2 某压力机的冲头在初始状态时,停在最上边,限位开关00002接通,接下起动按钮00000,使冲头下行.压到工件后压力升高,压力继电器动作,使00001接通,系统转换到保压延时,在该步仍然使冲头下行,保压延时5S后,系统转换到上行步,使冲压头上行,到初始位置时,碰到限位开关00002,系统回到初始,停止上行,请画出功能表图与梯形图。
3
00102
Keep
00100
001033333
253155
00100
00002
Keep
00101
00101
00102
00000
Keep
00102
00101
00103
000011
Keep
00103
00102
00100
TIM001
00500
00101
TIM
001
00102
00501
00103
END
#0050
保压
延时
25315
00100
00000起动
00101
00500
下行
00001压力升高
00102
00500
TIM001
TIM001延时结束
00103
00501
上行
00002上行到位
解:
1
图16.3
图16.4
当PLC刚开始运行时,(25315接通一个扫描周期)或者冲压头上行,当碰到上限位开关,使00100置位:当00101置位后,使01000复位。同理这样逐级复位,使这行程序简单、条理,见图16.3和图16.4。
例16.3 有两个密码按钮,当点击铵钮00001三次,点击按钮00002五次时,并且再点击确认按钮00000后,你将获得操作权限,并且操作权限标志01000输出1,采用相同步骤退出操作权限。反之,只要点击的次数与设置的密码次数不符,就不能打开操作权限标志,请编制实现上述功能的程序。
解:
CNT000与CNT002是用来设置权限密码的,操作人员可进行修改。由于计数器的当前值达到设定值时,计数器的输出为1,当大于设定值时,输出仍保持不变。为此,又设置了另二个计数器CNT001与CNT003用以防止多击时权限误动的问题。CNT004是用来退出操作权限而设的。见图16.5。
00002
CNT003
CNT
002
#0005
00000
00000
CNT002
00500
CNT000
00001
CNT001
CNT
000
#0003
00000
00002
CNT003
CNT
003
#0006
00000
00001
CNT001
CNT
001
#0004
00000
CNT
004
#0002
00500
CNT004
Keep
01000
00500
CNT004
END
图16.5
四、习题选解
00005
16.2 解:见图16.6。
00005
00004
00002
00000
a)
00006
00003
00001
00000
00001
00002
00500
00003
00004
00005
00006
00007
b)
00500
00501
0050222
00503
00000
TR0
00001
TR1
00002
00003
00004
00005
c)
图16.6
16.4 解:见图16.7。
#0300
00001
TIM
000
00500
TIM001
TIM000
00500
00500
00001
#0200
TIM
001
END
图16.7
CP
R
CNT
001
#100000
00001
00000
00001
此值可根据用户要求设定(需大于0010)
00001
CMP
CNT001
#0010
25507
END
25505
00500
25506
00501
16.6 解:见图16.8。输入:00001——起动开关
图16.8
16.9 解:
输入:甲地开关 SA1——00000
乙地开关 SA2——00001
开关合上标识“开灯” 开关断开标识“关灯”
输出: 路灯 HL——00500
见图16.9。
END
DIFU00300
DIFD00303
00000
DIFU00301
DIFD00304
00001
Keep
00305
00300
00301
00303
00304
00500
00305
图16.9
16.10 解:
I/0分配
输入:
起动按钮
SB1——00000 A地行程开关LS1——00002
手动停车
SB2——00001 B地行程开关LS2——00003
输出:
正向电磁铁:KM1——00500 正向指示灯HL1——00504
反向电磁铁:KM2——00501 反向指示灯HL2——00505
装料电磁铁:KM3——00502 卸料电磁铁:KM4——00503
见图16.10。
正向 反向
A B
00500
00000
00002
00001
00501
00500
TIM002
00502
TIM
001
#0600
00002
00501
TIM001
00000
00003
00500
00501
00001
00503
TIM
002
#0600
00003
00504
00500
00505
00501
END
图16.10
16.12 解:I/O 分配
输入: 1#台抢答按钮 SB1—00001 输出:主席台1#灯HL1—00501
2#台抢答按钮 SB2—00002 主席台2#灯HL2—00502
3#台抢答按钮 SB3—00003 主席台3#灯HL3—00503
4#台抢答按钮 SB4—00004 主席台4#灯HL4—00504
5#台抢答按钮 SB5—00005 主席台5#灯HL5—00505
6#台抢答按钮 SB6—00006 主席台6#灯HL6—00506
主席台复位按钮 SB7—00007 主席台笛HA -- 00507
见图16.11。
00501
00001
00007
00502
00503
00504
00505
00506
00501
00502
00002
00007
00501
00503
00504
00505
00506
00502
00003
00007
00501
00502
00504
00505
00506
00503
00503
00004
00007
00501
00502
00503
00505
00506
00504
00504
00005
00007
00501
00502
00503
00504
00506
00505
00505
00006
00007
00501
00502
00503
00504
00505
00506
00506
00501
00507
00502
00503
00504
00506
END
图16.11
13
展开阅读全文