《PLC知识学习教学教程全.ppt》由会员分享,可在线阅读,更多相关《PLC知识学习教学教程全.ppt(240页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第三章 CPM1A指令系统,指令系统概述 基本指令(11类17条) 编制梯形图应注意的问题 应用指令(17大类),第一部分、指令系统概述,大家一起来回顾梯形图的有关知识!,第一部分、指令系统概述,为什么要学习指令系统?,1、能够翻译梯形图为语句表 2、能够轻松地学习其他类型的PLC,第一部分、指令系统概述,-CPM1A系列 PC的指令根据功能分为 基本指令和应用指令两大类 1指令的格式、操作数及标志 指令的格式为: 助记符(指令码)操作数 操作数 操作数,2指令的两种形式微分型和非微分型,只要执行条件为ON,指令的非微分形式在每个循环周期都将执行; 微分指令仅在执行条件由OFF变为ON时才执行
2、一次。,第二部分、基本指令1LD和LD NOT 指令,功能: LD指令表示常开触点与左侧母线连接; LD NOT指令表示常闭触点与左侧母线连接。,2OUT和OUT NOT指令,功能: OUT指令输出运算结果; OUT NOT指令将运算结果取反后再输出。 应用-下页,OUT和OUT NOT指令应用,3AND和AND NOT指令,功能: AND指令表示常开触点与前面的触点电路相串联; AND NOT指令表示常闭触点与前面的触点电路相串联。 应用-下页,AND和AND NOT指令的应用,连续输出及其编程-下页,连续输出次序颠倒,AND和AND NOT, 连续输出,功能: OR指令表示常开触点与前面的
3、触点电路相并联; OR NOT指令表示常闭触点与前面的触点电路相并联。 应用-下页,4OR和OR NOT指令,OR和OR NOT指令应用,AND LD指令的使用,功能:AND LD指令用于逻辑块的串联连接,即对逻辑块进行逻辑“与”的操作。,5AND LD指令,AND LD指令,方法 方法2 LD00000LD00000 AND00001AND00001 OR NOT00002 OR NOT00002 LD00003 LD00003 OR00004OR00004 AND LDLD00005 LD00005OR NOT00006 OR NOT00006 AND LD AND LDAND LD OU
4、T20000OUT20000 在方法2中,AND LD指令之前的逻辑块数应小于等于8,而方法1对此没有限制。,功能:OR LD指令用于逻辑块的并联连接,即对逻辑块进行逻辑 “或”的操作。复杂梯形图-下页,6OR LD指令,OR LD指令复杂梯形图,功能: 当SET指令的执行条件为ON时,使指定继电器置位为ON,当执行条件为OFF时,SET指令不改变指定继电器的状态。,当RESET指令的执行条件为ON时,使指定继电器复位为OFF,当执行条件为OFF时,RESET指令不改变指定继电器的状态。 指令的应用,7置位和复位指令 SET和RESET,SET和RESET指令的应用,功能: 根据两个执行条件,
5、KEEP用来保持指定继电器的ON状态或OFF状态。 具有断电保持功能。 KEEP指令的用法,8保持指令-KEEP(11),KEEP指令的用法启保停电路,与普通继电器电路比较,两图中的程序功能完全相同,但用KEEP指令编程可以少用一条指令。 具有断电保持功能,KEEP指令启保停电路与普通继电器电路,功能: 当执行条件由OFF变为ON时,上升沿微分DIFU使指定继电器在一个扫描周期内为ON;,当执行条件由ON变为OFF时,下降沿微分指令DIFD使指定继电器在一个扫描周期内为ON。 指令的应用,9.上升沿微分和下降沿微分指令 DIFU(13)和DIFD(14),DIFU和DIFD指令的应用,NOP指
6、令的应用,注:修改程序时,使用NOP指令, 可使步序号变更较少,便于调试程序 。,功能:空操作指令用来取消某一步操作,10.空操作指令 NOP(00),功能:END指令表示程序结束。,11结束指令一END(01),基本指令,1LD和LD NOT 指令 2OUT和OUT NOT指令 3AND和AND NOT指令 4OR和OR NOT指令 5AND LD指令 6OR LD指令 7置位和复位指令SET和RESET 8保持指令KEEP 9 上升沿微分和下降沿微分指令DIFU和DIFD 10 空操作指令NOP 11 结束指令END,(熟练掌握),第三部分编制梯形图应注意的问题,(1)梯形图中线圈应放在最
7、右边,编制梯形图应注意的问题,(2)除极少数指令(如ILC、JME等)不允许有执行条件外,几乎所有的指令都需要执行条件.,如何解决:上电后指令一直执行?,上电后指令只执行一次?,特殊辅助继电器: 25313为常ON继电器 25314为常OFF继电器 25315常用作初始化脉冲,它在PC运行的第一个扫描周期,处于ON状态,然后处于OFF状态。,编制梯形图应注意的问题,(2)除极少数指令(如ILC、JME等)不允许有执行条件外,几乎所有的指令都需要执行条件.,上电后指令一直执行,上电后指令 只执行一次,特殊辅助继电器: 25313为常ON继电器;25314为常OFF继电器 25315在第一个扫描周
8、期为ON,然后为OFF。,(3)触点不能画在垂直路径上,编制梯形图应注意的问题,(4)编程时,对于逻辑关系复杂的程序段,应按照先复杂后简单的原则编程。,梯形图等效变换,编制梯形图应注意的问题,(5)尽量避免出现双线圈输出 -同一个程序中,同一元件的线圈使用了两次或多次,称为双线圈输出。,双线圈引起逻辑关系混乱,编制梯形图应注意的问题,复杂梯形图下页,复杂梯形图例子,更复杂的梯形图下页,你能够写出下图的语句表么?,你能够写出下图的语句表么?,第四部分、应用指令下一页,第四部分、应用指令,A.处理梯形图的分支指令 1.联锁/联锁解除指令IL(02)/ILC(03) 2.暂存继电器(TR),功能:I
9、L总是和ILC指令一起使用,用于处理梯形图中的分支电路图 分支应用下一页,IL/ILC的两点说明下一页,联锁/联锁解除指令处理分支电路,复合输出定义: 电路图中,A点为分支点,右侧分为若干条支路,且每条支路都有触点控制。,IL/ILC的说明:,(1)不论IL前面的条件是ON或OFF,PC都要对ILILC之间的联锁程序段处理,都要占用扫描时间。,(2)IL和ILC指令可以成对使用,也可以多个IL指令配一个ILC指令,但不允许嵌套使用(如ILILILCILC)。 连续使用IL指令下一页,连续使用IL指令,并联输出、连续输出和复合输出下一页,并联输出、连续输出和复合输出,2.暂存继电器下一页,A.梯
10、形图的分支指令1.联锁/联锁解除指令IL/ILC2.暂存继电器(TR),暂存继电器TR共有8位,分别为TR0TR7,TR位可用来暂时存储执行结果,如果一个TR位被设置于一个分支点处,则当前的执行结果就会存储在指定的TR位中。,应用下一页,用TR位处理梯形图的分支,多分支下一页,用TR位处理多分支电路,TR指令的说明下一页,TR指令的说明,在同一程序段中,同一TR号不能重复使用,在不同的程序段中,同一TR号可以重复使用。,TR不是独立的编程指令,只能和LD或OUT等基本指令一起使用指令的梯形图。,B.跳转指令下一页,TR 临时存放某节点状态 应用:LD - OUT TR0 LD TR0 IL,I
11、LC 造就新母线的工具 应用: LD - IL LD - LD - ILC,两种分支语句的理解, 新母线开始, 条件, 新母线结束, 条件, 存, 取,请同学们 将这两句话 写在教材上,例下页,例1,分析梯形图的结构,电机优先启动控制。,有5个电机M1M5,都有启动和停止控制按钮,要求按顺序启动,即前级电机不启动时,后级电机无法启动;前级电机停,后级电机也都停。,例2 下一页,例2,用两种分支方法分析梯形图,B.跳转指令下一页,B.跳转/跳转结束指令(JMP(04)/JME(05),梯形图符号及操作数取值区域,功能下一页,JMP/JME指令的功能,(1)当JMP N的执行条件为OFF时,跳过J
12、MP N和JME N之间的程序段,不占扫描时间,(2)有两种类型的跳转:跳转号在0149之间取值时,每个N只能使用一次;当取00值时,JMP00 JME00可以在程序中多次使用。以00作为JMP的跳转号时,它的执行时间比其他跳转指令的执行时间要稍长一些。,(3)多个JMP N可以共用一个JME N,如JMP 00JMP 00JME 00 。 (4)跳转指令可以嵌套使用,但必须是不同跳转号的嵌套,如JMP 00JMP 01JME 01JME00。,跳转指令的应用下一页,跳转指令的互锁应用下一页,跳步指令的应用,跳转指令的应用-互锁,C.定时器和计数器指令下一页,C. 定时器和计数器指令,定时器T
13、IM 高速定时器TIMH(15) 计数器CNT 可逆计数器CNTR(12),间隔定时器STIM(69) 高速计数器 输人中断的计数模式,CPM1A提供的定时计数功能:,功能强大, 使用复杂!,共用TC号, 000-127。,关于BCD码下一页,关于BCD码,BCD = Binary Coded Decimal 二进制编码的十进制 规则:每四个二进制位表示一位十进制位。,因此: BCD的0001 0001 表示十进制数的11。 BCD的加法应该如十进制。 如1001+1 =,0001 0000 不是1010 为方便区分,本课程使用BCD数值时前面加#号。,1.定时器下一页,1.定时器指令TIM,
14、梯形图符号及操作数取值区域,功能下一页,定时器的最小定时单位为0.1秒,定时范围0999.9秒,定时时间为SV0.1秒。,TIM指令的功能,定时器为通电延时,当定时器的输入为OFF时,定时器的输出为OFF。 当定时器的输入变为ON时,开始定时,定时时间到,定时器的输出变为ON。,若输入继续为ON,则定时器的输出保持为ON。 当定时器的输入变为OFF时,定时器的输出随之变为OFF。,应用下一页,请大家注意不要“死记硬背”!,输入on 开始定时延时时间到输出on,注意: 定时器没有断电保持功能,断电时,定时器复位,不能保存定时器的当前值。,TIM指令的应用,2.高速定时器下一页,2高速定时器指令一
15、TIMH(15),梯形图符号及操作数取值区域,高速定时器的最小定时单位为0.01秒,定时范围为099.99秒,定时时间为SV0.01秒。除此之外,其它情况TIMH与TIM相同。,3.计数器下一页,3计数器指令一CNT,梯形图符号及操作数取值区域,注释:为计数器TC号,SV为计数设定值。CP为计数脉冲输入端,R为复位端 。,应用下一页,说明: (1)计数器编程时,先编计数输入端,再编复位端,最后编CNT指令。 (2)定时器和计数器的编号是共用的,使用时不能冲突。,CNT指令的应用,工作时序下一页,CNT的工作时序,4.可逆计数器下一页,4可逆计数器指令一CNTR(12),梯形图符号及操作数取值区
16、域,注释: 为计数器TC号,SV为计数设定值。ACP为加计数脉冲输入端,SCP为减计数脉冲输入端,R为复位端 。,应用下一页,说明:可逆计数器编程时,先编加计数脉冲输入端,再编减计数脉冲输入端,后编复位端,最后编CNTR指令,CNTR指令的应用,工作时序下一页,CNTR的工作时序,出错标志位下一页,定时器和计数器指令出错标志位,出错标志位25503,当SV不是BCD数或间接寻址的DM通道不存在时置位为ON。,定时器TIM 高速定时器TIMH(15) 计数器CNT 可逆计数器CNTR(12),例1,长时间定时的问题下一页,例1,如何实现1小时定时?,答:用计数器实现长时间定时! 注:25500是
17、特殊继电器的位,提供0.1s时钟脉冲。,例2,闪烁电路下一页,例2,如何实现闪烁电路?,答:用计时器产生周期性方脉冲!,D.数据比较指令下一页,TIM001,TIM000,00000,D.数据比较指令,单字比较指令一CMP 双字比较指令一CMPL 块比较指令一BCMP 表比较指令TCMP,通道、位、字的概念下一页,通道、位、字的概念,一个字为16进制的4位数 一位16进制数可表示为4位二进制数,一个字为16个二进制位,进制转换:210,8,16,1,单字比较指令下一页,一个通道为16个继电器 一个继电器能表示1个二进制位,一个通道为16个二进制位,D.数据指令,D1.数据比较指令, 4种 D2
18、.数据移位指令,10种 D3.数据传送指令, 9种 D4.数据转换指令, 6种 合计29种,D1.数据比较指令,单字比较指令一CMP 双字比较指令一CMPL 块比较指令一BCMP 表比较指令TCMP,通道、位、字的概念下一页,通道、位、字的概念,一个字为16进制的4位数 一位16进制数可表示为4位二进制数,一个字为16个二进制位,进制转换:210,8,16,1,单字比较指令下一页,一个通道为16个继电器 一个继电器能表示1个二进制位,一个通道为16个二进制位,1单字比较指令一CMP(20),梯形图符号及操作数取值区域,功能:当执行条件为ON时,比较C1和C2的大小,将比较结果送SR区的标志位:
19、 大于标志位25505 等于标志位25506 小于标志位25507 出错标志位25503,应用一 下一页,注意: 图中的梯形图存在分支,其语句表程序用到了暂存继电器TR0。,CMP指令的基本应用,应用二 下一页,CMP指令的应用,2双字比较指令下一页,2双字比较指令一CMPL(60),梯形图符号及操作数取值区域,功能: 将通道C11、C1中的两个4位16进制数连成一个8位16进制数,将通道C2、C2中的两个4位16进制数连成另一个8位16进制数,然后比较这两个8位数的大小,将比较结果送SR区的标志位。,应用下一页,CMPL指令的应用,比较(C11、C1)与(C21、C2) 大于,则大于标志位2
20、5505置位为ON。 等于,则等于标志位25506置位为ON。 小于,则小于标志位25507置位为ON。 出错,则出错标志位25503置位为ON。,3块比较指令下一页,3块比较指令一BCMP(68)/BCMP(68),梯形图符号及操作数取值区域,功能下一页,BCMP指令的功能,比较块由CB,CB+1,CB+2,CB+31组成,分16个比较区域,每一个区域由两个通道定义,第一个为下限,第二个为上限,上限值应大于等于下限值。,当执行条件为ON时,将比较数据CD与每一个区域进行比较,如果CD处在某一个区域中,比较结果通道R中对应位置1,否则该对应位置0。,应用下一页,BCMP指令的应用,执行结果,4
21、表比较指令下一页,4表比较指令TCMP(85)/TCMP(85),梯形图符号及操作数取值区域,将数据CD与TB,TB+1,TB+2,TB+15中的数据进行比较,如果CD与这些通道中某一个的数据相同,则结果通道R中相应的位置1,否则置0 。,应用下一页,TCMP指令的应用,执行结果,E数据移位指令下一页,D2.数据移位指令,移位寄存器指令SFT 可逆移位寄存器指令SFTR 字移位指令WSFT 算术左移指令ASL 算术右移指令ASR(26)/ASR(26) 循环左移指令ROL(27)/ROL(27) 循环右移指令ROR(28)/ROR(28) 1位数字左移指令SLD(74)/SLD(74) 1位数
22、字右移指令SRD(75)/SRD(75) 异步移位寄存器指令ASFT(17)/ASFT(17),1移位寄存器指令SFT(10),附注:开始通道号St必须小于或等于结束通道号E,且St和E必须在同一区域。,梯形图符号及操作数取值区域,功能示意图下一页,当复位端R为OFF时,在移位脉冲端SP由OFFON的上升沿时,E到St通道中的所有位依次左移一位,E通道的最高位溢出丢失,St通道的最低位则移进数据输入端IN的数据。 当复位端R为ON时,从St到E通道中的所有位将置为OFF,此时移位脉冲端和数据输入端无效。,SFT指令的功能示意图,应用下一页,说明:SFT指令编程时,先编数据输入端,再编移位脉冲端
23、,再编复位端,最后编SFT指令。,SFT指令的应用,2可逆移位下一页,2可逆移位寄存器指令SFTR(84)/SFTR(84),梯形图符号及操作数取值区域,说明:控制通道C中的数据规定了移位方向、数据输入端、移位脉冲端和复位端。,C定义下一页,控制通道C的含义及移位功能,说明:如果控制通道复位端(bit15)为ON,则从St到E通道的数据及进位为CY全部复位为0.,应用一下一页,SFTR指令的应用(一),应用二下一页,SFTR指令的应用(二),3下一页,3字移位指令 WSFT(16)/WSFT(16),功能:当执行条件为ON时,WSFT每执行一次将St和E通道中的数据以字为单位左移一次,0000
24、移进St,E中的数据溢出丢失。,梯形图符号及操作数取值区域,应用一下一页,WSFT指令的应用,4下一页,4算术左移指令ASL(25)/ASL(25),梯形图符号及操作数取值区域,功能下一页,ASL指令的功能,当执行条件为ON时,ASL每执行一次将Ch中数据左移一位,最高位移到CY位,0移进最低位。,算术右移下一页,5算术右移指令ASR(26)/ASR(26),梯形图符号及操作数取值区域,功能下一页,ASR指令的功能,当执行条件为ON时,ASR每执行一次将Ch中数据右移一位,最低位移到CY位,0移进最高位。,6循环左移下一页,6循环左移指令ROL(27)/ROL(27),梯形图符号及操作数取值区
25、域,功能下一页,ROL指令的功能,当执行条件为ON时,ROL每执行一次将Ch中的数据连同CY位数据,循环左移一位。,7循环右移下一页,7循环右移指令ROR(28)/ROR(28),梯形图符号及操作数取值区域,功能下一页,ROR指令的功能,当执行条件为ON时,ROR每执行一次将Ch中的数据连同CY位数据,循环右移一位。,8一位数字左移下一页,81位数字左移指令SLD(74)/SLD(74),梯形图符号及操作数取值区域,功能下一页,SLD指令的功能,当执行条件为ON时,SLD每执行一次将St到E通道中的数据以数字(4位二进制)为单位左移一次,E的最高位数字溢出丢失,St的最低位数字填入0。,9一位
26、数字右移下一页,91位数字右移指令SRD(75)/SRD(75),梯形图符号及操作数取值区域,功能下一页,SRD指令的功能,当执行条件为ON时,SRD每执行一次将St到E通道中的数据以数字(4位二进制)为单位右移一次,E的最低位数字填入0,St的最高位数字溢出丢失。,10异步移位寄存器指令下一页,10异步移位寄存器指令ASFT(17)/ASFT(17),梯形图符号及操作数取值区域,控制数据C的含义,控制数据C的含义,St和E之间的通道构成一个可逆的异步移位寄存器,ASFT可以将寄存器中的0000字上移或下移,执行几次ASFT后,所有0000字可以集中到寄存器的上半部或下半部。,应用下一页,AS
27、FT指令的应用,控制字:#6000 0110,0000,0000 ,0000,移动方向,允许移动,复位,D3. 数据传送指令下一页,D3. 数据传送指令,1传送指令 MOV(21)/MOV(21) 2取反传送指令 MVN(22)/MVN(22) 3块传送指令 XFER(70)/XFER(70) 4块设置指令 BSET(71)/BSET(71) 5数据交换指令 XCHG(73)/XCHG(73) 6单字分配指令 DIST(80)/DIST(80) 7数据调用指令 COLL(81)/COLL(81 8位传送指令 MOVB(82)/MOVB(82) 9数字传送指令 MOVD(83)/MOVD(83)
28、,1传送指令MOV(21)/MOV(21),梯形图符号及操作数取值区域,功能下一页,MOV指令的功能,当执行条件为ON时,将S中的数据传送到D通道中。,应用下一页,MOV指令的应用,说明:当00000为ON时,执行MOV指令,将常数0196送至DM0000。,2取反传送指令下一页,2取反传送指令MVN(22)/MVN(22),梯形图符号及操作数取值区域,当执行条件为ON时,将S中的数据取反后传送到D中。,应用下一页,3下一页,MVN指令的应用,说明:当00000为ON时,执行MVN指令,将常数0196取反后(结果为FE69)送至DM0000中。,3块传送指令XFER(70)/XFER(70),
29、梯形图符号及操作数取值区域,功能下一页,XFER指令的功能,块传送是指将几个连续通道中的数据对应传送到另外几个连续通道中。,4。下一页,4块设置指令BSET(71)/BSET(71),梯形图符号及操作数取值区域,功能下一页,BEST指令的功能,当执行条件为ON时,将S中的数据传送到从St到E的所有通道中去。,5. 下一页,5数据交换指令XCHG(73)/XCHG(73),梯形图符号及操作数取值区域,功能下一页,XCHG指令的功能,当执行条件为ON时,将E1、E2中的数据交换。,6. 下一页,6单字分配指令DIST(80)/DIST(80),梯形图符号及操作数取值区域,根据控制数据C的内容,DI
30、ST指令可进行单字数据分配或堆栈的进栈操作 。,功能下一页,1)单字数据分配 C的bit15bit12=8时 2)进栈操作 C的bit15bit12=9时,DIST指令的功能,DIST指令的功能,2)进栈操作,7. 下一页,7数据调用指令COLL(81)/COLL(81),梯形图符号及操作数取值区域,请注意:与数据分配指令对应比较,功能下一页,COLL指令的功能,根据控制数据C的内容,COLL指令可以:,1)数据调用 C=00006655时,2)出栈操作 C=90009999时先入先出; C=80008999时后入先出;,COLL指令的功能,2)出栈操作,先入先出,COLL指令的功能,2)出栈
31、操作,后入先出,8. 下一页,8位传送指令MOVB(82)/MOVB(82),梯形图符号及操作数取值区域,当执行条件为ON时,将S中指定的一位传送到D的值定位上,S和D中的位由C指定。,功能下一页,MOVB指令的功能,当执行条件为ON时,将S中指定的一位传送到D的值定位上,S和D中的位由C指定。C的最右边2个数字指定源位,C的最左边2个数字指定目的位。,应用下一页,C=#1201,源01,目的12。执行MOVB指令后,将#00FF的第01位送到LR10的第12位。,MOVB指令的应用,9. 下一页,9数字传送指令MOVD(83)/MOVD(83),梯形图符号及操作数取值区域,功能:当执行条件为
32、ON时,将S中指定的数字位(4个二进制位)传送到D中指定的数字位,一次最多可以传送4个数字位。 S中要传送的第一个数字位、传送的数字位数、D中接收被传送数字的第一个数字位由C指定。,C的含义 下一页,C的含义,为什么最大是四位数字?,传送举例 下一页,传送举例,D4. 数据转换指令下一页,D4. 数据转换指令,BCD码二进制转换指令BIN 二进制BCD码转换指令BCD 416译码器指令MLPX 164编程器指令DMPX ASC转换指令ASC 七段译码指令SDEC (*),1BCD码二进制转换指令BIN(23)/BIN(23),功能:当执行条件为ON时,BIN将S中的BCD数转换为二进制数,存入
33、R中。转换过程中,S的内容保持不变。,梯形图符号及操作数取值区域,2二进制BCD码转换指令BCD(24)/BCD(24),功能:当执行条件为ON时,BIN将S中的BCD数转换为二进制数,存入R中。转换过程中,S的内容保持不变。,图3.105,梯形图符号 及操作数取值区域,3416译码器指令MLPX(76)/MLPX(76),功能: 1)当执行条件为ON时,MLPX对S中指定的数字进行译码,译码的结果存入R开始的通道中。最多可对4位数字同时译码。,2)S中第一个要译码的数字由C指定,译码的结果存入R通道中;第二个要译码的数字是紧邻第一个数字的最高位数字,译码的结果存入R+1通道中;下面以此类推。
34、,MLPX指令的梯形图符号及操作数取值区域,图3.106,控制数据C的含义 CLICK HERE!,控制字C与转换举例,图3.107,图3.108,译码举例,4164编程器指令DMPX(77)/DMPX(77),功能:1)当执行条件为ON时,DMPX对源通道进行编码,编码结果存放在R中指定的数字位上。一次最多可对4个源通道进行编码。,2)第一个源通道S的编码结果放入R中指定的开始存放数字位上,S+1通道的编码结果放入R中的紧邻开始存放数字位的高位数字上,依此类推,存完R的数字3后再从R的数字0开始存放。,DMPX指令的梯形图符号及操作数取值区域,:,图3.109,说明:控制数据C的含义 CLI
35、CK HERE!,控制字C及转换举例,图3.110,图3.111,编码举例,5ASC转换指令ASC(86)/ASC(86),功能:当执行条件为ON时,ASC对S中指定的数字(十六进制数)转换ASC码并存入从R开始的结果通道中,一次最多可对S中的4个数字进行转换,如果C中指定从R的高8位开始存放,则最多可占用3个结果通道。,ASC指令的梯形图符号及操作数取值区域,图3.112,说明:控制数据C的含义 CLICK HERE!,ASCII码转换实例,控制字C及转换,图3.113,6七段译码指令SDEC(78)/SDEC(78),功能:当执行条件为ON时,SDEC对源通道中的数字进行7段译码,译码结果
36、放入从R开始的结果通道中。一次最多可对S中的4个数字进行转换。,控制数据C的含义下一页,控制数据C的含义,控制字C及转换举例下一页,控制字C及转换举例,七段译码举例 下一页,七段译码举例,D.数据指令总结下一页,D.数据指令总结,D1.数据比较指令, 4种 D2.数据移位指令,10种 D3.数据传送指令, 9种 D4.数据转换指令, 6种 合计29种,E 十进制运算指令下一页,E. 十进制运算指令,进位位置1指令STC 进位位置0指令CLC BCD码加法指令ADD BCD码减法指令SUB 双字BCD码加法指令ADDL 双字BCD码减法指令SUBL BCD码乘法指令MUL BCD码除法指令DIV
37、 双字BCD码乘法指令MULL 双字BCD码除法指令DIVL (*) 递增指令INC 递减指令DEC,核心: BCD码的运算,跳到:F. 二进制运算指令,图3.118,功能:当STC的执行条件为ON时进位标志位25504被置为1。当CLC的执行条件为ON时,进位标志位25504被置为0。,STC、CLC指令的梯形图符号,1进位位置1指令STC 进位位置0指令CLC,返回,2BCD码加法指令ADD(30)/ADD(30),梯形图符号 及操作数取值区域,图3.119,功能:当执行条件为ON时,ADD将Au、Ad的内容和CY相加,结果存入R中,若结果大于9999将把CY置为ON。,ADD指令的应用,
38、图3.120,返回,3BCD码减法指令SUB(31)/SUB(31),功能:当执行条件为ON时,SUB将Mi的内容减去Su的内容和CY,结果存入R中。若结果为负,将置为CY,而R中的内容为实际结果的十进制补码。,梯形图符号 及操作数取值区域,图3.121,SUB指令的应用,图3.122,返回,4双字BCD码加法指令ADDL(54)/ADDL(54),功能:当执行条件为ON时,ADDL将Au+1、Au中的8位BCD数与Ad+1、Ad中的8位BCD数相加,再与CY想家,结果存入R+1、R中,若结果大于99999999,CY将被置位。ADDL功能如右所示:,ADDL指令的梯形图符号及操作数取值区域,
39、图3.123,返回,5双字BCD码减法指令SUBL(55)/SUBL(55),功能:当执行条件为ON时,SUBL将Mi+1、Mi中的8位BCD数减去Su+1、Su中的8位BCD数,再减去CY,结果存入R+1、R中。若结果为负,将置为CY,而R+1、R中的内容为实际结果的十进制补码。 SUBL功能如右所示:,SUBL指令的梯形图符号及操作数取值区域,图3.124,返回,6BCD码乘法指令MUL(32)/MUL(32),功能:当执行条件为ON时,MUL将Md、Mr中的内容相乘,结果存入R+1、R中,R+1中存积的高4位数,R中存积的低4位数。,梯形图符号 及操作数取值区域,图3.125,返回,7B
40、CD码除法指令DIV(33)/DIV(33),功能:当执行条件为ON时,DIV将Dd中的内容除以Dr中的内容,结果存入R+1、R中,R+1中存余数,R中存商。,梯形图符号 及操作数取值区域,图3.126,返回,8双字BCD码乘法指令MULL(56)/MULL(56),功能:当执行条件为ON时,MULL将Md+1、Md中的8位BCD数与Mr+1、Mr中的8为BCD数相乘,结果存入R+3R中。MULL功能如右所示:,MULL指令的梯形图符号及操作数取值区域,图3.127,返回,9双字BCD码除法指令DIVL(57)/DIVL(57),功能:当执行条件为ON时,DIVL将Dd+1、Dd中的8位BCD
41、数除以Dr+1、Dr中的8位BCD数,结果存入R+3R中。R+3、R+2存余数,R+1、R存商。,返回:E. 十进制运算指令,10递增指令INC(38)/INC(38),功能:当执行条件为ON时,每执行一次INC将Ch中的数据按十进制加1,不影响进位位CY。,梯形图符号 及操作数取值区域,图3.129,返回,11递减指令DEC(39)/DEC(39),功能:当执行条件为ON时,每执行一次DEC将Ch中的数据按十进制减1,不影响进位位CY。,梯形图符号 及操作数取值区域,图3.130,返回,F. 二进制运算指令,二进制加法指令ADB 二进制减法指令SBB 二进制乘法指令MLB 二进制除法指令DV
42、B,核心: 以通道为单位计算,跳到: G. 逻辑运算指令,1二进制加法指令ADB(50)/ADB(50),功能:当执行条件为ON时,ADB将Au、Ad中的内容和CY进行二进制加法运算,结果存入R中。如果运算结果大于FFFF,CY为ON。,梯形图符号 及操作数取值区域,图3.131,2二进制减法指令SBB(51)/SBB(51),功能:当执行条件为ON时,进行一次二进制减法运算,SBB将Mi中的内容减去Su中的内容,再减去CY,结果存入R中。,梯形图符号 及操作数取值区域,图3.132,3二进制乘法指令MLB(52)/MLB(52),功能:当执行条件为ON时,MLB将Md、Mr中的内容进行二进制
43、乘法计算,结果存入R+1、R中,R+1中存积的高4位十六进制数,R中存积的低4位十六进制数。,梯形图符号 及操作数取值区域,图3.133,4二进制除法指令DVB(53)/DVB(53),功能:当执行条件为ON时,进行一次二进制除法运算,DVB将Dd中的内容除以Dr中的内容,结果存入R+1、R中。R+1中存余数、R中存商。,梯形图符号 及操作数取值区域,图3.134,G. 逻辑运算指令,1求反指令 2逻辑与指令 3逻辑或指令 4异或指令 5同或指令,以通道为单位对数据进行与、或、非、异或、同或等逻辑运算,关于与、或、非、异或、同或逻辑运算下一页,与、或、非逻辑运算,异或、同或逻辑运算下一页,AN
44、D,OR,NOT,异或、同或逻辑运算,返回:G. 逻辑运算指令,1求反指令COM(29)/COM(29),梯形图符号 及操作数取值区域,图3.135,功能: 当执行条件ON时,将Ch中的数据按位求反。,图3.136 求反功能示意图,2逻辑与指令ANDW(34)/ANDW(34),功能:当执行条件为ON时,将I1、I2中的数据按位进行逻辑与运算,结果存入R中。,图3.138 与指令的功能示意图,图3.137 梯形图符号 及操作数取值区域,3逻辑或指令ORW(35)/ORW(35),功能:当执行条件为ON时,将I1、I2中的数据按位进行逻辑或运算,结果存入R中。,图3.140 或指令的功能示意图,
45、图3.139 梯形图符号 及操作数取值区域,4异或指令XORW(36)/XORW(36),功能:当执行条件为ON时,将I1、I2中的数据按位进行逻辑异或运算,结果存入R中。,图3.142 异或指令的功能示意图,图3.141 梯形图符号 及操作数取值区域,5同或指令XNRW(37)/XNRW(37),功能:当执行条件为ON时,将I1、I2中的数据进行逻辑同或运算,结果存入R中。,图3.144 同或指令的功能示意图,图3.143 梯形图符号 及操作数取值区域,G. 逻辑运算指令,1求反指令 2逻辑与指令 3逻辑或指令 4异或指令 5同或指令,以通道为单位对数据进行与、或、非、异或、同或等逻辑运算,
46、H. 特殊指令下一页,H. 特殊指令,故障报警指令FAL 严重故障报警指令FALS 信息显示指令MSG I/O刷新指令IORF 位计数指令BCNT,1故障报警指令、 严重故障报警指令下一页,1故障报警指令FAL 严重故障报警指令FALS,功能: FAL产生非严重故障 当执行条件为ON时,FAL指令将故障代码N1送至FAL输出区(SR25300SR25307)中,同时CPU面板上的ERROR指示灯闪烁,但程序仍可继续执行。,FALS产生严重故障 当执行条件为ON时,FALS指令将故障代码N2送至FAL输出区(SR25300SR25307)中,同时CPU面板上的ERROR指示灯常亮,RUN指示灯熄
47、灭,程序停止执行,所有输出复位。,FAL、FALS指令 的梯形图符号 FAL(06)指令的应用,2信息显示指令下一页,2信息显示指令MSG(46)/MSG(46),功能:当执行条件为ON时,MSG从FM至FM+7通道中读取16个ASC码,并把对应的字符显示在编程器的屏幕上。,梯形图符号 及操作数取值区域,MSG指令的应用,3I/O刷新指令下一页,3I/O刷新指令IORF(97)/IORF(97),功能:当执行条件为ON时,刷新从St到E之间的所有I/O通道。,梯形图符号 及操作数取值区域,4位计数指令下一页,4位计数指令BCNT(67)/BCNT(67),功能:当执行条件为ON时,BCNT计算
48、在S和S+(N-1)之间所有通道中为1的位(bit)的总数,结果以BCD码的形式存入D中。,梯形图符号 及操作数取值区域,返回: H. 特殊指令,H. 特殊指令,故障报警指令FAL 严重故障报警指令FALS 信息显示指令MSG I/O刷新指令IORF 位计数指令BCNT,I. 高级功能指令下一页,I. 高级功能指令,I1. 子程序控制指令 I2. 高速计数器控制指令 I3. 脉冲输出控制指令 I4. 中断控制指令 I5. 步进指令,I1. 子程序控制指令下一页,I1.子程序控制指令,1子程序调用指令 2子程序定义和子程序返回指令 3宏指令,1子程序调用指令下一页,1子程序调用指令SBS(91)
49、/SBS(91),功能:SBS在主程序中调用子程序。当执行条件为ON时,SBS(91)N调用编号为N的子程序。,SBS指令的梯形图符号,子程序调用方法下一页,子程序调用方法,子程序定义和子程序返回指令下一页,2子程序定义和子程序返回指令SBN(92)/RET(93),功能:SBN和RET一起使用,SBN(92)N用于每段子程序的开始,定义子程序的编号为N(000-049)。RET(93)用于每段子程序的结尾,表示子程序结束。,SBN、RET指令的梯形图符号,子程序的使用下一页,子程序的使用,功能:SBN和RET一起使用,SBN(92)N用于每段子程序的开始,定义子程序的编号为N。RET(93)