S7-200 SMART表格指令按照使用流程可分为
建表(存储器填充FILL)--->填表(增加至表格ATT)--->查询(表格查找TBL)--->先入先出(FIFO) 或后入先出(LIFO)
下图所示为表格指令图示:
LAD | STL | 指令名称 | 注释 |
---|---|---|---|
FILL,IN,OUT,N | 存储器填充 | 存储器填充指令使用地址IN中存储的字值填充从地址OUT开始的N个连续字。 N的取值范围是1到255。 |
|
ATT DATA,TBL | 填表 | 向表格(TBL)中加入字值(DATA)。 表格中第一个数值为最大条目数TL,第二个数值为实际条目数EC。 |
|
FND=TBL,PTN,INDX FND<>TBL,PTN,INDX FND>TBL,PTN,INDX FND<TBL,PTN,INDX |
查表 | 在表格(TBL)中搜索与某些标准相符的数据。 | |
LIFO TBL,DATA FIFO TBL,DATA |
后入先出 |
将表格中的最新(或最后)一个条目移至输出内存地址。 |
注意:
1.创建表格,表格包含20个条目,从存储器位置4开始。(在第一次扫描时,定义表格的最大长度)
下图是创建的一个表格,其中VW0为表格最大长度,VW2为当前条目数,VW4~VW42为存储在条目内的数据
2. 通过输入I0.0复位表格。在I0.0的上升沿,使用“+0”填充从VW2开始的存储单元。
使用该指令后,将表格当前条目数清零,同时将VW2~VW42原有条目数据清零。
3.通过输入I0.1将值写入表格。在I0.1的上升沿,将存储单元VW100的值复制到表格。
通过添加表格指令,将VW100中的数据添加到表格中,此时当前条目数变为1,同时第一个条目VW4中数据赋值为1。
通过填表指令,依次填满表格中的20个条目。4.在I0.2的上升沿,将表中的最后一个值移入VW102。
通过执行先入后出指令,将表内最后一个数据条目VW42移入到VW102。移出后,当前条目数由20变为19。
5.在I0.3的上升沿,将表中的第一个值移入VW104。
在执行FIFO先入先出指令之前VW2=19,将表内第一个数据条目VW4移入到VW104,此时条目前移,同时当前条目数VW2由19变为18,操作执行完以后,结果如下图所示:
6.在表中搜索值为10的第一个位置。在I0.4的上升沿,复原索引指针。查找等于10的表格条目。
通过查找指令,查找表格内数据为10的条目,执行该指令后,指向条目内第8个条目数据符合查找条件(数据条目搜索编号从0开始)。
例程所需条件:
1、软件版本:STEP 7-Micro/WIN SMART V2.3
2、SMART CPU固件版本:V1.0及以上
3、通讯硬件:TP电缆(以太网电缆)
所实现的功能:
以下是上文提到的各表格指令的使用,具体说明参考程序注释
注意:本例程仅供参考,程序中的CPU版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。