您现在的位置是:首页 > PLC技术 > PLC技术

S7-200 PLC查表指令及应用实例

来源:艾特贸易2017-06-05

简介查表指令 FND? 的功能是从首地址为 TBL 的字型数据表中,找出符合 PTN 及 CMD 条件的数据在表中的编号(编号范围为 0 99 ),并将编号存放到 INDX 中。 FND? 中的 ? 是比较运算符号 = 、 、

    查表指令FND?的功能是从首地址为TBL的字型数据表中,找出符合PTNCMD条件的数据在表中的编号(编号范围为099),并将编号存放到INDX中。    FND?中的“?”是比较运算符号“=”、“<>”、“<”和“>”,查表指令格式如图4-42所示。    在梯形图中,查表指令以功能框的形式编程,指令名称为“TBL_FIND”。它共有5个数据输入端:    1) EN:查表允许信号端,EN =1时,查表。    2) TBL:表格的首地址,字型地址。    3) PTN:用于比较的数据,即给定值。    4) INDX:用来存放表中符合查表条件的数据的地址。    5) CMD:比较运算符号“?”的编码,1=(等于);2<>(不等于);3<(小于);4>(大于)。    在执行查表指令前,应先对INDX的内容清0。当允许输入EN有效时,从INDX开始搜索TBL,查找符合给定值(PTN)和条件( CMD)的数据,如果没有发现符合条件的数据,则将表的实际长度(EC)存放到INDX中。如果找到一个符合条件的数据,则将该数据的表中地址(数据编号)存放到INDX中。如果想继续查找符合条件的数据,则必须先对INDX1,并重新激活查表指令,继续查找同样符合条件的数据在表中所处的位置。
查表指令
    4-42    查表指令    影响允许输出ENO正常工作的出错条件为:SM4.3(运行时间),0006(间接寻址),0091(操作数超界)。    【例】  4-43给出了一个查表指令的编程例子。    10.0=1时,FND指令开始查找数据表中等于16#1020的数据。TBL的数据为VW40,表明从VW44开始即为表中数据,实际表中共有4项数据(EC=4)    如将AC10,则表示从表头查找。当I0.0=1时,从VW44开始搜索等于16#1020的数据项,搜索完后AC1的数据等于0(不是4),表明找到一个数据其位置为VW44。如果想继续查找,则可以令AC1的数据加1,再次接通I0.0,再执行一次搜索,查找完之后AC1的数据等于2,表明又找到一个。如想继续,重复上述过程,直到ACl的数据等于4(即AC1=4=EC)为止,表明查找结束。
查表指令举例
    4-43    查表指令举例