S7-1500与S7-200SMART采用S7协议通讯

S7-1500作为服务器端与S7-200SMART远程客户端采用S7协议通讯,已经在S7-200SMART端通过GET/PUT向导做了设置,在S7-200SMART端编程的时候还需要用传送指令把I/O数据传送到V区吗?

问题补充:
当S7-200SMART作为服务器端,远程客户端发送过来的数据也在V区,S7-200SMART编程的时候可以直接使用V区的地址吧

最佳答案

S7通信,目的是交换数据。S7-200 SMART要把什么数据(指定V、I、Q、M区的起始地址和长度,这些数据存储在GET/PUT指令TABLE 申明的参数表中)写入S7-1500的什么区域(DB1、I、Q、M等的起始地址)(PUT指令),S7-200 SMART要把S7-1500上的什么数据写入到自己的什么区域(GET指令)。这是在使用指令前你必须要知道的。
尽管官方文档说:GET/PUT指令TABLE 的操作数可以是:IB、QB、VB、MB、SMB、SB、*VD、*LD、*AC,个人认为有误:IB如何存储错误代码,IB如何能做写操作等。所以我们通常使用V区作为TABLE 的操作数。
如果你是用GET/PUT向导生成的,则不需要初始化操作,换句话说,就是不需要对TABLE 申明的参数表进行MOVE指令赋值。向导完成了相关工作。
如果,你直接使用GET/PUT指令编程,则必须使用MOVE指令完善TABLE 申明的参数表。如:远程 CPU的 IP地址、远程 CPU 通信数据区域的地址指针(允许数据区域包括:I、Q、M、DB1)、数据长度 、本地 CPU 通信数据区域的地址指针(允许数据区域包括:I、Q、M、V)等。
如你问的是:交换I/O区的数据,需不需要把I/O区的实际数据(状态)写入V区。答案是不需要:从参数表可以看出,我们自需要地址指针。

提问者对于答案的评价:
感谢你的回答,说的很全面。你说的意思就是在设置GET/PUT时,是把数据指向哪个区,是吧!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月30日 下午11:40
下一篇 2020年10月30日 下午11:40

相关推荐