|
4.1 时序输入指令 |
时序输入指令主要包括基本输入指令、电路块操作指令、连接型微分指令以及位测试类指令。
基本输入指令是直接对输入进行操作的指令,CP1H系列PLC的基本输入指令主要包括读(LD)、非读(LDNOT)、与(AND)、与非(ANDNOT)、或(OR)、或非(ORNOT)、非(NOT)等指令。
LD(Load,读指令):表示逻辑起始,将常开触点与左母线连接。LDNOT(非读指令):表示逻辑起始,将常闭触点与左母线连接。OUT(输出指令):将逻辑运算处理结果输出到指定接点,该指令为基本输出指令,为便于内容的叙述,在此讲述。这三指令格式如表4-1所示。
表4-1 读、非读、输出指令格式
使用说明
①在语句表指令中,“//”表示注释。
②LD、LDNOT指令表示逻辑开始指令,直接连接在母线上。
③通过AND LD指令或OR LD指令连接电路块时,AND LD或OR LD指令将从本LD/LDNOT指令开始的电路块进行串联或并联连接。
④输出指令不能直接连接在母线上,其输入条件中必须有一个以上的LD/LDNOT指令,若没有LD/LDNOT指令,CX-Programmer的“条”中自动以红色显示,表示指令输入错误。
例4-1 合上电源开关,没有按下点动按钮时,指示灯亮,按下按钮时电动机转动。分别使用PLC梯形图、语句表指令实现这一控制功能。
解 点动按钮SB与PLC输入端子0.00连接。电动机M1由KM0控制,KM0的线圈与PLC输出端子100.00连接,指示灯与PLC输出端子100.01连接,PLC控制程序如表4-2所示。
表4-2 例4-1的PLC控制程序
AND(与指令)、ANDNOT(与非指令)为触点串联指令,其中AND在梯形图中表示串联一个常开触点以形成逻辑“与”操作;ANDNOT在梯形图中表示串联一个常闭触点以形成逻辑“与非”操作。
使用说明
①AND和ANDNOT指令是单个触点串联连接指令,可连续使用。
②AND和ANDNOT指令不能直接连接在母线上,也不能用于电路块的开始部分。
③无每次刷新指定时,这两条指令都可读取I/O存储器指定位的内容;有每次刷新指定时,AND指令读取CPU单元内置输入端子的实际接点状态;ANDNOT指令对CPU单元内置输入端子的实际接点状态取反后读出。
例4-2 在某一控制系统中,SB0为停止按钮,SB1、SB2为点动按钮,当SB1按下时电机M1启动,此时再按下SB2时,电机M2启动而电机M1继续工作,如果按下SB0,则两个电机都停止工作,试用PLC实现其控制功能。
解 SB0、SB1、SB2分别与PLC输入端子0.00、0.01、0.02连接。电机M1、电机M2分别由KM0、KM1控制,KM0、KM1的线圈分别与PLC输出端子100.00和100.01连接,PLC控制程序如表4-3所示。
OR(或指令)、ORNOT(或非指令)为触点并联指令,其中OR在梯形图中表示并联一个常开触点以形成逻辑“或”操作;ORNOT在梯形图中表示并联一个常闭触点以形成逻辑“或非”操作。
表4-3 例4-2的PLC控制程序
使用说明
①OR和ORNOT指令是单个触点并联连接指令,可连续使用。
②无每次刷新指定时,这两条指令都可读取I/O存储器指定位的内容;有每次刷新指定时,读取CPU单元内置输入端子的实际接点状态。
例4-3 在两人抢答系统中,当主持人允许抢答时,先按下抢答按钮的进行回答,且指示灯亮,主持人可随时停止回答,试用PLC实现其控制功能。
解 设主持人用转换开关SA来设定允许/停止状态,甲的抢答按钮为SB0,乙的抢答按钮为SB1,抢答指示灯为HL1、HL2。SA、SB0、SB1分别与PLC输入端子0.00、0.01、0.02连接。HL1、HL2分别与PLC输出端子100.00和100.01连接,PLC控制程序如表4-4所示。
表4-4 例4-3的PLC控制程序
NOT(非指令):又称为取反指令,将输入条件取反,连接到下一段。该指令没有操作数。指令格式如表4-5所示。520为“非”指令的功能号,用户可以不输入,系统自动生成。
表4-5 NOT指令格式
使用说明
①NOT指令为下一段连接指令。
②在NOT指令的最终段中需加上输出类指令,如OUT指令以及下段连接型指令之外的功能指令。
③NOT指令不能在回路的最终段中使用。
例4-4 在某一控制系统中,有4个按钮SB0~SB3和1个指示灯HL,要求同时按下SB0、SB2或者按下SB3而没按下SB1时,指示灯HL处于熄灭状态,否则HL点亮。
解 SB0、SB1、SB2、SB3分别与PLC输入端子0.00、0.01、0.02和0.03连接。根据要求也就是输入0.00和0.02的信号状态为“1”或者在输入0.03的信号状态为1且输入0.01的信号状态为0时,则输出100.00为0,否则输出100.00为1,PLC控制程序如表4-6所示。
表4-6 例4-4的PLC控制程序
电路块操作指令包含块“与”(ANDLD)指令和块“或”(ORLD)指令。
ANDLD(块“与”指令):又称为电路块的串联指令,用于2个或2个以上触点并联在一起的电路块的串联连接。
使用说明
①将并联回路块串联连接进行“与”操作时,回路块开始用LD或LDNOT指令,回路块结束后用ANDLD指令连接起来。
②ANDLD指令不带操作数,是一条独立指令,ANDLD指令可串联多个并联电路块,支路数量没有限制。
③串联3个以上的电路块时,可以采取顺序连接的形式,即先通过ANDLD指令串联2个电路块后,再通过ANDLD指令串联下一个电路块。另外,也可以在3个电路块之后继续配置ANDLD指令,进行一次性串联。
例4-5 ANDLD的使用如表4-7所示。
条0中a由0.00和0.01并联在一起然后与0.02串联,不需要使用串联块命令ANDLD;b由0.03和0.04并联构成一个块再与0.02串联,因此需要使用ANDLD命令;c由0.05和0.06并联构成一个块再与块b串联,因此也需要使用ANDLD命令。
条1中由块d、块e、块f串联而成,因此块d、块e串联时需一个ANDLD,块f与前面电路串联时也需一个ANDLD,指令表如编程方法1所示。条1的指令表中也可以先将3个并联回路写完再书写ANDLD,如编程方法2所示。
ORLD(块“或”指令):又称为电路块的并联指令,用于2个或2个以上触点串联在一起的电路块的并联连接。
表4-7 ANDLD的使用
使用说明
①将串联回路块串联连接进行“或”操作时,回路块开始用LD或LDI指令,回路块结束后用ORLD指令连接起来。
②ORLD指令不带操作数,是一条独立指令,ORLD指令可并联多个串联电路块,支路数量没有限制。
③并联3个以上的电路块时,可以采取顺序连接的形式,即先通过ORLD指令并联2个电路块后,再通过ORLD指令并联下一个电路块。另外,也可以在3个电路块之后继续配置ORLD指令,进行一次性并联。
例4-6 ORLD的使用如表4-8所示。
条0中由块a、块b、块c并联构成,块a由0.00、0.01、0.02串联在一起;块b由0.03、0.04、0.05串联在一起;块c由0.06、0.07串联在一起。因此块a、块b并联时需一个ORLD,块c与前面电路块并联时也需一个ORLD,指令表如编程方法1所示。条0的指令表中也可以先将3个串联回路块写完再书写两个ORLD,如编程方法2所示。
条1中由块f、块g、块h并联而成,而块f又由块d和块e串联而成。块f、块g并联时需一个ORLD,块h与前面电路块并联时也需一个ORLD,指令表如编程方法1所示。条1的指令表中也可以先将块f、块g、块h这3个串联回路写完再书写ORLD,如编程方法2所示。
连接型微分指令包括连接型上升沿微分(UP)指令以及连接型下降沿微分(DOWN)指令,其指令格式如表4-9所示。521为UP指令的功能号,522为DOWN指令的功能号,用户可以不输入,系统自动生成。
表4-8 ORLD的使用
UP(连接型上升沿微分指令):又称为连接型正跳变输入指令,某操作数出现由0到1的上升沿跳变时,使触点闭合,形成一个扫描周期的脉冲,驱动后面的输出线圈。
DOWN(连接型下降沿微分指令):又称为连接型负跳变输入指令,某操作数出现由1到0的下降沿跳变时,使触点闭合,形成一个扫描周期的脉冲,驱动后面的输出线圈。
表4-9 连接型微分指令格式
使用说明
①UP和DOWN为下一段连接型指令,只有在输入信号变化时才有效,因此一般将其放在这一变化脉冲出现的语句之后,输出的脉宽为一个机器扫描周期。
②UP、DOWN无操作数,不适用于电路的最终端。
例4-7 连接型微分指令的使用及时序如表4-10所示。当检测到0.00由OFF→ON(上升沿)且0.01接通时,输出100.00接通一个扫描周期;当检测到0.02由ON→OFF(下降沿)且0.03为ON时,输出100.01接通一个扫描周期。从时序图中可以看出,若0.01为OFF,即使检测到0.00的上升沿,100.00也不接通。同理,若0.03为OFF,即使检测到0.02的下降沿,100.01也不接通。
表4-10 例4-7连接型微分指令的使用及时序
例4-8 根据梯形图,画出100.00、100.01、100.02的时序图,如表4-11所示。其中条0、条1和条2控制一组时序,条3、条4和条5控制另一组时序。
表4-11 例4-8的时序分析
位测试类指令包括位测试指令和位测试非指令。位测试类指令的输入端可以直接连到左母线,输出端不能直接连到右母线。
位测试指令包含了LD型位测试指令、AND型位测试指令、OR型位测试指令,各指令格式如表4-12所示。其中,S为测试数据通道编号;N为测试的位号,位范围数据通常为0000~000F(十六进制)或0~15(十进制)。
表4-12 位测试指令
使用说明
①位测试指令是用来检测S通道的第N位的状态,若为1,则指令的输入输出端直通。
②LD型位测试指令是可以直接连接在母线上的下一段连接型指令。
③AND型位测试指令为AND(串联)型的下一段连接型指令,不能直接连接在母线上。
④OR型位测试指令为OR(并联)型的下一段连接型指令。
例4-9 位测试指令的使用如表4-13所示。在条0中,当数据存储器D20的第3位为1时,指令的输入输出端直通,100.00线圈得电;在条1中,当数据存储器D20的第4位为1并且0.00常开触点闭合时,指令的输入输出端直通,100.01线圈得电;在条2中,当数据存储器D20的第2位为1或者0.01常开触点闭合时,指令的输入输出端直通,100.02线圈得电。
表4-13 位测试指令的使用
位测试非指令包含了LD型位测试非指令、AND型位测试非指令、OR型位测试非指令,各指令格式如表4-14所示。其中,S为测试数据通道编号;N为测试的位号,位范围数据通常为0000~000F(十六进制)或0~15(十进制)。
使用说明
①位测试非指令是用来检测S通道的第N位的状态,若为0,则指令的输入输出端直通。
②LD型位测试非指令是可以直接连接在母线上的下一段连接型指令。
③AND型位测试非指令为AND(串联)型的下一段连接型指令,不能直接连接在母线上。
④OR型位测试非指令为OR(并联)型的下一段连接型指令。
表4-14 位测试非指令
例4-10 位测试非指令的使用如表4-15所示。在条0中,当数据存储器D20的第4位为0时,指令的输入输出端直通,100.00线圈得电;在条1中,当数据存储器D20的第3位为0并且0.00常开触点闭合时,指令的输入输出端直通,100.01线圈得电;在条2中,当数据存储器D20的第2位为0或者0.01常开触点闭合时,指令的输入输出端直通,100.02线圈得电。
表4-15 位测试非指令的使用