S7-200-PLC的指令系统基本指令3(堆栈指令)课件

上传人:58****5 文档编号:252338691 上传时间:2024-11-14 格式:PPT 页数:37 大小:1.14MB
返回 下载 相关 举报
S7-200-PLC的指令系统基本指令3(堆栈指令)课件_第1页
第1页 / 共37页
S7-200-PLC的指令系统基本指令3(堆栈指令)课件_第2页
第2页 / 共37页
S7-200-PLC的指令系统基本指令3(堆栈指令)课件_第3页
第3页 / 共37页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,200611-20,张宇航,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,基本指令(三),S7-200,可编程序控制器,基本指令(三)S7-200可编程序控制器,教学内容,LPS,:进栈指令。,LRD,:读栈指令。,LPP,:出栈指令。,教学内容LPS:进栈指令。,教学目标,价值目标:培养学生探索问题 的本质特征的科学态度,知识目标:了解逻辑堆栈操作指令的基本功能,能力目标:熟练运用堆栈指令进行梯形图与 指令表的互换,教学目标价值目标:培养学生探索问题 的本质特征的科学态度,教学难点,堆栈的原理及正确的运用,教学难点堆栈的原理及正确的运用,堆栈操作指令,又称,多分支回路指令,S7-200CN,系列,PLC,使用一个,9,层堆栈来处理所有逻辑操作。堆栈是一组能够存储和取出数据的暂存单元,其特点是“先进后出”。每一次进行入栈操作,新值放入栈顶,栈底值丢失;每一次进行出栈操作,栈顶值出栈,第,2,级堆栈内容上升到栈顶,栈底自动生成随机数。逻辑堆栈指令主要用来完成对触点进行复杂的连接,堆栈操作指令 又称多分支回路指令,堆栈操作指令,LPS,(入栈)指令:,LPS,指令把栈顶值复制后压入堆栈,栈中原来数据依次下移一层,栈底值压出丢失。,LRD,(读栈)指令:,LRD,指令把逻辑堆栈第二层的值复制到栈顶,,2-9,层数据不变,堆栈没有压入和弹出。但原栈顶的值丢失。,LPP,(出栈)指令:,LPP,指令把堆栈弹出一级,原第二级的值变为新的栈顶值,原栈顶数据从栈内丢失。,堆栈操作指令 LPS(入栈)指令:LPS指令把栈顶值复制后,说明:,逻辑堆栈指令可以嵌套使用,最多为,9,层。为保证程序地址指针不发生错误,入栈指令,LPS,和出栈指令,LPP,必须成对使用,最后一次读栈操作应使用出栈指令,LPP,。下图为逻辑堆栈指令的简单应用。,堆栈操作指令,说明:堆栈操作指令,1,2,3,4,5,6,7,8,9,堆栈使用示意图:,LPS,进栈,第一次使用,LPS,指令,1,堆栈操作指令,123456789堆栈使用示意图:LPS进栈第一次使用LPS,1,2,3,4,5,6,7,8,9,堆栈使用示意图:,LPS,进栈,第二次使用,LPS,指令,1,堆栈操作指令,123456789堆栈使用示意图:LPS进栈第二次使用LPS,1,2,3,4,5,6,7,8,9,堆栈使用示意图:,LPS,进栈,第二次使用,LPS,指令,1,2,将第一次内容压入第,2,层,堆栈操作指令,123456789堆栈使用示意图:LPS进栈第二次使用LPS,1,2,3,4,5,6,7,8,9,堆栈使用示意图:,LPS,进栈,第三次使用,LPS,指令,1,2,3,将第二次内容压入第,2,层,又将第一次内容从第,2,层再压入第,3,层,堆栈操作指令,123456789堆栈使用示意图:LPS进栈第三次使用LPS,堆栈操作指令,说明:,2,、使用,LRD,,是读出最上端所存的最新数,据的专用指令,栈内的数据不发生移,动。,堆栈操作指令说明:,1,2,3,4,5,6,7,8,9,堆栈使用示意图:,LRD,读栈,1,2,3,读取最上层的内容,堆栈中的内容不发生变化,堆栈操作指令,123456789堆栈使用示意图:LRD读栈123读取最上层,堆栈操作指令,说明:,3,、使用,LPP,指令,各数据按顺序向上,移动,后进的先出,将最上端的,数据读出,同该数据就从栈中消,失。,堆栈操作指令说明:,1,2,3,4,5,6,7,8,9,堆栈使用示意图:,LPP,出栈,1,2,3,第一次使用,LPP,堆栈操作指令,123456789堆栈使用示意图:LPP出栈123第,1,2,3,4,5,6,7,8,9,堆栈操作指令,堆栈使用示意图:,LPP,出栈,1,2,第一次使用,LPP,第二层的内容上移到第一层,第三层的内容上移到第二层,123456789堆栈操作指令堆栈使用示意图:LPP出栈12,S7-200-PLC的指令系统基本指令3(堆栈指令)课件,说明:,4,、由于堆栈操作有其独特的顺序性,因此要求堆栈的用法要求必须正确无误。,堆栈只要保证入栈次数和出栈次数相等,就不会出现大的问题,读栈不影响堆栈的指针的变化。,5,、这些指令为独立指令,不带任何软元件编号。,堆栈操作指令,说明:堆栈操作指令,例,1,:一层堆栈,指令表,LD I0.0,A I0.1,堆栈操作指令,I0.0 I0.1 I0.2,Q0.0,Q0.1,I0.3 I0.4,Q0.2,I0.5,Q0.3,I1.0,Q0.4,Q0.5,I0.6 I0.7,Q0.6,I1.2,Q0.7,I1.1,分支点开始,使用,LPS,指令,3 LPS,入栈,例1:一层堆栈 指令表堆栈操作指令I0.0,例,1,:一层堆栈,指令表,LD I0.0,A I0.1,3 LPS,出栈,4 A I0.2,5,Q0.0,6 LPP,7,Q0.1,I0.0 I0.1 I0.2,Q0.0,Q0.1,I0.3 I0.4,Q0.2,I0.5,Q0.3,I1.0,Q0.4,Q0.5,I0.6 I0.7,Q0.6,I1.2,Q0.7,I1.1,使用,LPP,指令,堆栈操作指令,例1:一层堆栈 指令表3 LPS出栈,例,1,:一层堆栈,指令表,LD I0.0,A I0.1,3 LPS,4 A I0.2,5,Q0.0,6 LPP,7,Q0.1,8 LD I0.3,堆栈操作指令,I0.0 I0.1 I0.2,Q0.0,Q0.1,I0.3 I0.4,Q0.2,I0.5,Q0.3,I1.0,Q0.4,Q0.5,I0.6 I0.7,Q0.6,I1.2,Q0.7,I1.1,LPS,9 LPS,10 A I0.4,11,Q0.2,LPP,12 LPP,13 A I0.5,14,Q0.3,例1:一层堆栈 指令表3 LPS4,例,1,:一层堆栈,指令表,LD I0.0,A I0.1,3 LPS,4 A I0.2,5,Q0.0,6 LPP,7,Q0.1,8 LD I0.3,9 LPS,10 A I0.4,11,Q0.2,13 A I0.5,14,Q0.3,12 LPP,I0.0 I0.1 I0.2,Q0.0,Q0.1,I0.3 I0.4,Q0.2,I0.5,Q0.3,I1.0,Q0.4,Q0.5,I0.6 I0.7,Q0.6,I1.2,Q0.7,I1.1,LPS,15 LD I0.6,16 LPS,17 A I0.7,18,Q0.4,堆栈操作指令,例1:一层堆栈 指令表3 LPS4,例,1,:一层堆栈,指令表,LD I0.0,A I0.1,3 LPS,4 A I0.2,5,Q0.0,6 LPP,7,Q0.1,8 LD I0.3,9 LPS,10 A I0.4,11,Q0.2,13 A I0.5,14,Q0.3,12 LPP,15 LD I0.6,16 LPS,17 A I0.7,18,Q0.4,I0.0 I0.1 I0.2,Q0.0,Q0.1,I0.3 I0.4,Q0.2,I0.5,Q0.3,I1.0,Q0.4,Q0.5,I0.6 I0.7,Q0.6,I1.2,Q0.7,I1.1,LRD,LRD,LPS,19 LRD,20 A I1.0,21,Q0.5,读栈,22 LRD,23 A Q1.1,24,Q0.6,读栈,LPP,25 LPP,26 A I1.2,27,Q0.7,堆栈操作指令,例1:一层堆栈 指令表3 LPS4,说明,1:,入栈的目的就是要将当前的逻辑运算结果暂时保存起来,然后就像没有入栈指令一样完成本行指令。,再在入栈点上将逻辑运算结果读出来,进行下一重输出行。,如果是最后一次使用栈内结果,就必须是出栈指令,LPP,,若不是最后一次使用,则应该用读栈指令,LRD,,去除结果后参加运算。,堆栈操作指令,说明1:堆栈操作指令,说明,2:,栈操作指令,LPS,、,LRD,、,LPP,在使用中可以这样理解:除了对分支电路进行操作外,在程序中没有其它作用。,在编写程序时,可以分两部分来分析:,一方面,要保证栈操作的正确性,入栈、出栈要配对使用并且使用正确;,另一方面,在阅读程序时可以不看栈操作指令,按梯形图掌握程序的正确性。,堆栈操作指令,说明2:堆栈操作指令,例,2,:二层堆栈,指令表,1 LD I0.1,堆栈操作指令,M1.1 M1.2,M1.0,I0.1 I0.2 I0.3,Q0.0,Q0.1,Q0.2,Q0.3,I0.4,例2:二层堆栈 指令表堆栈操作指令M1.1,例,2,:二层堆栈,LPS,指令表,1 LD I0.1,堆栈操作指令,M1.1 M1.2,M1.0,I0.1 I0.2 I0.3,Q0.0,Q0.1,Q0.2,Q0.3,I0.4,例2:二层堆栈LPS 指令表堆栈操作指令M,例,2,:二层堆栈,指令表,1 LD I0.1,2 LPS,第一层入栈,3 A I0.2,堆栈操作指令,M1.1 M1.2,M1.0,I0.1 I0.2 I0.3,Q0.0,Q0.1,Q0.2,Q0.3,I0.4,LPS,LPS,例2:二层堆栈 指令表2 LPS第一,例,2,:二层堆栈,指令表,1 LD I0.1,2 LPS,第一层入栈,3 A I0.2,4 LPS,第二层入栈,5 A I0.3,6,Q0.0,7 LPP,第二层出栈,8 AN M1.0,9,Q0.1,堆栈操作指令,M1.1 M1.2,M1.0,I0.1 I0.2 I0.3,Q0.0,Q0.1,Q0.2,Q0.3,I0.4,LPS,LPP,LPS,例2:二层堆栈 指令表2 LPS第一,例,2,:二层堆栈,指令表,1 LD I0.1,2 LPS,3 A I0.2,4 LPS,5 A I0.3,6,Q0.0,7 LPP,8 AN M1.0,9,Q0.1,10 LPP,第二层出栈,11 A M1.1,12 LPS,第一层入栈,13 A M1.2,14,Q0.2,15 LPP,第一层出栈,16 A I0.4,Q0.3,MEND,堆栈操作指令,M1.1 M1.2,M1.0,I0.1 I0.2 I0.3,Q0.0,Q0.1,Q0.2,Q0.3,I0.4,LPS,LPP,LPS,LPP,例2:二层堆栈 指令表2 LPS3,例,2,:二层堆栈,指令表,1 LD I0.1,2 LPS,3 A I0.2,4 LPS,5 A I0.3,6,Q0.0,7 LPP,8 AN M1.0,9,Q0.1,10 LPP,11 A M1.1,12 LPS,13 A M1.2,14,Q0.2,15 LPP,16 A I0.4,Q0.3,MEND,堆栈操作指令,M1.1 M1.2,M1.0,I0.1 I0.2 I0.3,Q0.0,Q0.1,Q0.2,Q0.3,I0.4,例2:二层堆栈 指令表2 LPS3,例,2,:二层堆栈,说明,:,确定堆栈的层数,只要看一个阶梯上有几条支路就是几层堆栈。,例题中第二层出栈后就不是多层栈了。,多重输出只要顺序不错,连续入栈、出栈的次数最多可达,9,层。,堆栈操作指令,例2:二层堆栈说明:堆栈操作指令,SB1,SB2 KM1 SB3 KM2 SB4 KM3,KM1 KM2,KM1 KM2 KM3,I/O,分配表,SB1,停止按钮,I0.0,SB2,启动按钮,1 I0.1,SB3,启动按钮,2 I0.2,SB4,启动按钮,3 I0.3,KM1,接触器,Q0.0,KM2,接触器,Q0.1,KM3,接触器,Q0.2,例,3,:练习,堆栈操作指令,SB1SB2 KM1 SB3,SB1,SB2 KM1 SB3 KM2 SB4 KM3,KM1 KM2,KM1 KM2 KM3,接线图,例,3,:练习,堆栈操作指令,SB1 SB2 SB3 SB4,M I0.0 I0.1 I0.2 I0.3,L1 Q0.0 Q0.1 Q0.2,FU,KM1 KM2 KM3,220V,PLC
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!