S7-200中创建一个表格

问题:
如何在S7200项目中组态表格,应该注意什么?

解答:
S7-200中的表格同下面所示的表格类似:

内存地址n

内容n

描述n

VW0n

0020n

表格条目的最大个数n

VW2n

0005n

表格条目的当前序号n

VW4n

条目 1n

VW4 的内容n

VW6n

条目 2n

VW6 的内容n

VW…n

条目 …n

VW…的内容n

VW44n

条目 20n

VW44 的内容n

表格的第一个内存单元内包含有表格长度 (本例中为 20n个条目)。第二个内存单元显示表格条目的当前个数。其它单元包含有条目。表格中最多可以有n100 个条目,不包含定义表格最大长度的参数和当前条目的序号(这里指 VW0n和 VW2)。下面的程序中创建了一个带 20 个条目的表格。它开始于单元 4n并且由输入 I0.0 至 I0.3控制:

Network 1 // Network 1 创建了一个带 20n个条目的表格,起始于内存单元 4
LD SM0.1 // 加载特殊标记 位 1
MOVW +20, VW0 // 定义表格长度n

Network 2 // Network 2 用输入 I0.0重置表格内容
LD I0.0 // 加载输入 I0.0
EU // 沿测试
FILL +0, VW2, 21 // 用“+0”填入从VW2 开始的内存单元n

Network 3 // Network 3 用I0.1 将值写入表格
LD I0.1 // 加载 I0.1
EU // 沿测试
ATT VW100, VW0 // 将内存单元 100 的值写入表格n

Network 4 // Network 4 通过输入I0.2 读取第一个表格值
LD I0.2 // 加载输入 I0.2
EU // 沿测试
LIFO VW0, VW102 // 将最后一个表格值写入内存单元 102n

Network 5 // Network 5 通过输入 I0.3 读取最后一个表格值
LD I0.3 // 加载输入 I0.3
EU // 沿测试
FIFO VW0, VW104 // 将第一个表格值写入内存单元 104n

在第一个Network中,表格是使用命令“MOVW +20,nVW0”创建的。在Network 2中,整个表格根据输入 I0.0n的沿重新设置。所用的命令“FILL +0, VW2, 20”将“+0”填入到存储区的nVW2 至 VW40。在第三个网络中,命令“ATT VW100, VW0”由输入 I0.1n的沿控制,将单元 100 的值写入表中。Network 4 中的命令“LIFO VW0,nVW102”将表格的最后一个值移到单元n102。这可以减少条目数。也可以通过命令“FIFO VW0,nVW104”将表格中的第一个条目输入单元n104。所有以下的条目都往上移动一个位置。表格中实际条目个数(这里为nVW2)由CPU根据每个命令自动的增加或减少。所使用命令的详细描述在STEP7nMICRO的在线帮助中给出。更多关于表格操作的信息,请参见S7-21xnCPU手册(条目ID:1109154)中第10-73页,以及S7-22x CPU手册(条目nID:1109582)中第9-107页。

注意事项:
无论何时,当想要使用表格时不要忘记先生成“表格条目的最大个数”那个条目。如果不做这一步的话,就跟本无法在表里生成条目。另外,必须注意所有那些由沿来激活的读/写命令。

关键字:
编程注意事项,栈内存

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc341214.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日
下一篇 2021年4月12日

相关推荐

发表回复

登录后才能评论