如何确定 S7-200 通过 GPRS 发送的数据全部被接收到?

1.说明
本条目描述了在 S7-200 程序块中那些参数需要设置来接收其他站点的 GPRS 数据。n

两个或多个包含 S7-200 CPU 和 调制解调 SINAUT MD 720-3 模块的远程站通过 GPRS 连接到一个中心站。中心站采用 SINAUT MICRO SC 来管理与所有已组态的远程站的通讯(图 1 )。n

如何确定 S7-200 通过 GPRS 发送的数据全部被接收到?

图1 :结构图n

2.WDC_SEND 和 WDC_RECEIVE 功能块
SINAUT MICRO SC 库内的功能块 WDC_SEND和 WDC_RECEIVE 负责发送和接收数据。数据的接收由调制解调模块上 LED 灯“C”的闪烁来指示。如果块的参数设置错误,接收的数据就会被舍弃不会写入 CPU。下列参数决定数据的交换:n

WDC_SEND:n

  • DATA_STAR:第一个数据字节的起始地址,比如 VB100 就是“100”n
  • DATA_LENGTH:发送数据的长度,比如 10 个字节就是“10”

WDC_RECEIVE:n

  • DATA_START:接收数据的起始地址(接收的数据自动更新)n
  • DATA_LENGTH:接收数据的长度(接收的数据自动更新)n
  • RECVBUFFER_START和 RECVBUFFER_LENGTH 说明了接收地址区,该区域会被CPU中接收到的数据覆盖。
    发送地址区 DATA_START和 DATA-LENGTH 必须适合接收地址区以保证接收 CPU 所发送的数据都是可以访问的。

3. 接收的数据被舍弃并不写入 CPU
下面举例说明当 WDC_RECEIVE 参数设置错误时发生的问题:n

如何确定 S7-200 通过 GPRS 发送的数据全部被接收到?

图2:没有数据写入 CPUn

  • 远程站 1 发送起始地址为 VB100 长度为 10 字节的数据n
  • 远程站 2 允许起始地址为 VB200 长度为 10 字节的接收区n
  • 发送的数据在 WDC_RECEIVE 所允许的范围之外,数据没有写入 CPU,发送请求被告知出错。

如何确定 S7-200 通过 GPRS 发送的数据全部被接收到?

图 3:没有数据写入 CPUn

  • 远程站 1 发送起始地址为 VB100 长度为 20 个字节的数据
  • 远程站 2 允许起始地址为 VB100 长度为 10 个字节的接收区
  • 部分发送数据在 WDC_RECEIVEP 允许的范围之外,数据没有写入 CPU,发送请求被告知出错。

4. 接收数据准确写入 CPU
WDC_RECEIVE 指定的接收区必须至少和发送数据区一样大。

4.1 允许的区域准确匹配

如何确定 S7-200 通过 GPRS 发送的数据全部被接收到?

图 4:允许的地址区准确匹配

  • 远程站 1 发送起始地址为 VB100 长度为 10 个字节的数据
  • 远程站 2 允许起始地址为 VB100 长度为 10 个字节的接收区
  • 发送的数据在 WDC_RECEIVE 允许的地址区之内,从 VB100 开始的 10 个字节写入 CPU,发送请求被告知“完成”。

4.2 允许区域大于接收的数据

如何确定 S7-200 通过 GPRS 发送的数据全部被接收到?

图 5:允许的地址区大于接收的数据

  • 远程站 1 发送起始地址为 VB100 长度为 10 个字节的数据
  • 远程站 2 允许起始地址为 VB50 长度为 100 个字节的数据区
  • 发送的数据在 WDC_RECEIVE 允许的地址区之内,从 VB100 开始的 10 个字节写入 CPU,发送请求被告知“完成”。

说明:
在下列手册中可以找到关于 SINAUT MICRO SC GPRS 通信的更多信息:

  • “GPRS/GSM调制解调器 SINAUT MD720-3 系统手册”条目 ID: 23117745
  • “SINAUT MICRO SC 系统手册”条目 ID: 23119827

关键字:
通信,数据传输

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

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

相关推荐

发表回复

登录后才能评论