- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PLC的应用指令
图6-16 先入先出指令的应用 使ENO=0的错误条件:SM1.5(空表),SM4.3(运行时间),0006(间接地址),0091(操作数超出范围)。如果试图从空表中移走数据,特殊存储器位SM1.5将被置为1。 6.4.4 后入先出指令 后入先出(Last In First Out,LIFO)指令从表中移走最后放进的数据,并将它送入DATA指定的位置,剩下的各项依次向上移动一个位置。 每次执行此指令,表中的项数减1。TBL为INT型,DATA为WORD型。后入先出指令的应用如图6-17所示。 图6-17 后入先出指令的应用 该指令使ENO=0的错误条件和受影响的特殊存储器位同FIFO指令。 LD I0.2 EU LIFO VW100,VW200 6.5 译码、编码、段码指令 译码、编码、段码指令格式见表6-10所示。 6.5.1 译码指令 当使能输入有效时,根据输入字节的低4位表示的位号,将输出字相应位置1,其他位置0。 设AC0中存有的数据为16#08,则执行译码(DECO)指令将使MW0中的第8位数据位置1,而其他数据位置0,对应的梯形图程序如图6-18所示。 图6-18 译码指令的应用 6.5.2 编码指令 编码(Encode,ENCO)指令将输入字的最低有效位(其值为1)的位数写入输出字节的最低位。设AC1中的错误信息为2#0000 0010 0000 0000(第9位为1),编码指令“ENCO AC2,VB40”将错误信息转换为VB40中的错误代码9。 图6-19 编码指令的应用 6.5.3 段译码指令 段(Segment)译码指令SEG根据输入字节的低4位确定的十六进制数(16#0~16#F)产生点亮7段显示器各段的代码,并送到输出字节。 图6-20中7段显示器的D0~D6段分别对应于输出字节的最低位(第0位)~第6位,某段应亮时输出字节中对应的位为1,反之为0。若显示数字“1”时,仅D1和D2为1,其余位为0,输出值为6,或二进制数2#0000 0110。 图6-20 段译码指令的应用 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * 取模操作的结果对于字节操作是0~7,对于字操作是0~15,对于双字操作是0~31。如果取模操作的结果为0,不进行循环移位操作。 3.移位指令的应用 当I0.0输入有效时,将VB10左移4位送到VB10,将VB0循环右移3位送到VB0,如图6-11所示。 图6-11 移位与循环移位指令的应用 6.3.3 移位寄存器指令 移位寄存器指令是一个移位长度可指定的移位指令。 1.移位寄存器指令的格式 移位寄存器指令格式及功能如表6-8所示。 梯形图中DATA为数据输入,指令执行时将该位的值移入移位寄存器。S-BIT为移位寄存器的最低位地址,字节型变量N指定移位寄存器的长度和移位方向,正向移位时N为正,反向移位时N为负。SHRB指令移出的位被传送到溢出位(SM1.1)。 N为正时,在使能输入EN的上升沿时,寄存器中的各位由低位向高位移一位,DATA输入的二进制数从最低位移入,最高位被移到溢出位。N为负时,从最高位移入,最低位移出。DATA和S-BIT为BOOL变量。 移位寄存器提供了一种排列和控制产品流或者数据的简单方法。 2.移位寄存器指令的应用 移位寄存器指令的应用如图6-12所示。 图6-12 移位寄存器指令的应用 6.3.4 数据移位指令的应用 当按下起动按钮I0.1,8只彩灯从Q0.0开始每隔1?s依次向左循环点亮,直至按下停止按钮I0.2后熄灭。 根据控制要求设计的梯形图如图6-13所示,8只彩灯为Q0.0~Q0.7。 图6-13 8只彩灯依次向左循环点亮梯形图 6.4 数据表功能指令 表功能指令用来建立和存取字类型的数据表。 数据表由3部分组成:表地址,由表的首地址指明;表定义,由表地址和第2个字地址所对应的单元分别存放的两个表参数来定义最大填表数和实际填表数;存储数据,从第3个字节地址开始存放数据,一个表最多能存储100个数据。 表功能指令如表6-9所示。 6.4.1 填表指令 填表指令(Add
文档评论(0)