• {{item.name}}
{{item.name}}
{{item2.name}}
更多
常问问题

Rawdata,BSEND/BRCV,AR_SEND使用中的一些常见问题

star star star star star
5.0 分
  • 综合介绍
文档编号:F0323| 文档类型:常问问题| 发布时间:2024年02月29日
  • 0
  • 282
  • 7451
本文描述了在使用Rawdata,BSEND/BRCV,AR_SEND中大家碰到的的一些常见问题。

前言
如大家所知,在我们通过WinCC与SIMATIC S7自动化系统进行通信时,可以通过“SIMATIC S7 Protoclo Suite”通道,此协议集里有多种网络协议和类型,如“工业以太网,MPI,Name connection,Profibus,TCP/IP等等”这些都是大家使用“SIMATIC S7 Protoclo Suite”时常用的一些方式。但SIMATIC S7 Protocol Suite 还包含一些特殊功能,如通过原始数据变量(RAWDATA)进行数据采集,通过BSEND/BRCV进行原始数据变量的大数量采集(参见下载中心文档A0204),以及通过AR_SEND进行高速数据采集(参见下载中心文档A0109)等。对于详细的步骤,在此不作阐述,可以参见下载中心文档,由于大家在使用过程中产生的一些疑问,以下对一些常见的问题进行一些解析,以便大家更好的使用。

使用Rawdata进行传送数据时,为什么经常所有数据都是0,而有时又能采集到数据?

   问:使用Rawdata进行数据的传送时,为什么经常数据是0,而有时正常?
   答:可能与设置传输的数据长度有关。虽然Rawdata的最大长度时65535字节,但是当我们使用Rawdata进行传送原始变量数据块时,其数据的传送必须能使用一个PDU(协议数据单元)完整地传送。而SIMATIC S7通常使用的PDU长度是有限制的:
S7-300:240个字节/PDU
S7-400:480个字节/PDU
由于一个PDU还包括了报头和附加信息,减去后可以传送的数据块字节大小为:
S7-300:208个字节/PDU
S7-400:448个字节/PDU
意味着当使用Rawdata 进行数据传送时,一个块只能是208(S7-300)或448(S7-400)字节以内,小于或等于此数据量时,WinCC是可以采集到数据的,如果大于此数据量,则WinCC中无法采集到任何数据,设置数据区长度如图1所示:表示从DB1.DBB0开始的448个字节被传送


图1

在Rawdata,BSEND/BRCV,AR_SEND这三种数据传送方式中,当组态通道连接参数时,哪些需要勾选Send/receive raw data block,具体是起什么作用?

   问:Rawdata,BSEND/BRCV,AR_SEND三种数据传送方式,哪些需要勾选Send/receive raw data block,具体作用是什么
   答:只有在使用BSEND/BRCV时需要勾选,Rawdata和AR_SEND不需要选择,此选项的应与STEP7在Netpro里建立连接时的参数(如图3) 相匹配


图2


图3

使用BSEND/BRCV做大数据量采集时,什么情况会导致通信无法建立?

   问:使用BSEND/BRCV做大数据量采集时,什么情况会导致通信无法建立
   答:主要有以下几种情况,
A,检查WinCC中建立连接时的设备名称是否与Set PG/PC Interface中一致,如不一致,则通信不正常,如图4


图4

B,在STEP7中建立Unspecified连接时,需要注意图5中的几个参数。
a, 1默认为勾选,一定得取消此选项,否则通信无法建立。
b, 2此ID号一定要与STEP7程序中编写的BSEND/BRCV中的ID(如图6)一致,否则通信无法建立
c, 3此IP地址要与实际上位机以太网卡IP地址相同,否则通信无法建立


图5



图6

C,注意WinCC中(如图2)和STEP7 Netpro中(如图3)的Connection Resource一定要相同,否则通信无法建立
D,注意STEP7程序中(如图6)和WinCC中(如图7)的R_ID一定要相同,否则通信无法建立


图7

为什么在通过BSEND(SFB12)进行原始数据变量的大数量传送时会在STATUS管脚返回状态25?

   问:通过BSEND(SFB12)进行原始数据变量大数据量传送时SFB12的STATUS管脚会返回状态值25
   答:因为如果传送数据量比较大的时候,那么传送数据会花费一些时间,上一次调用BSEND传送数据的工作还没有完成,再次调用BSEND时,那么STATUS管脚就会显示的状态25,表示上次传送数据的过程还在继续。所以,当我们再次调用BSEND时应该等上一次调用工作完成,即DONE管脚为1后。


图8

在使用AR_SEND进行高速数据采集时,什么情况会导致通信无法建立?

   问:使用AR_SEND进行高速数据采集时,什么情况会导致通信无法建立
   答:主要有以下几种情况
A,确保所建立的数据块结构正确,参数赋值无误,详情参考WinCC在线帮助。例如,图9为“一个归档变量,具有等间隔时间标志的数据块结构”


图9

B,注意归档变量的长度,及数据块大小等几个关键参数一定要保持一致。否则通信无法建立,以“一个归档变量,具有等间隔时间标志的数据块结构”为例,注意图9,10,11中的几个传送数据大小的参数必须一致,否则通信无法建立,此处与BSEND有所区别。



图10 初始化数据块长度


图11

使用AR_SEND进行高速数据采集时,WinCC中设置AR_ID和AR_ID Subnumber需要注意什么?

   问:使用AR_SEND进行高速数据采集时,WinCC中设置AR_ID和AR_ID Subnumber需要注意什么?
   答:如果传送一个归档变量,则只需要AR_ID参数,如果传送多个归档,则需要通过AR_ID Subnumber来区分多个归档变量。


图12

使用AR_SEND采集变量时发现WinCC中时间与实际采集时间有出入,例如“一个归档变量,具有等间隔时间标志的数据块结构”。
   问:使用AR_SEND采集变量时,发现WinCC中时间与实际采集时间有出入
   答:我们知道,因为使用AR_SEND采集数据时,有多种数据结构,每种采集方式都不尽相同,所以他们也有各自的差别,因此如果我们采集数据过多时,得注意我们的采集方式,他们的数据和采样时间可能会不太一样。我们以“一个归档变量,具有等间隔时间标志的数据块结构”为例子。可以看到,在图14中,当时系统时间为15:44:15,可是WinCC中采集到的数据已经是包含了此时间之后的数据采集时刻。原因是当使用“一个归档变量,具有等间隔时间标志的数据块结构”时,你的触发发送的时刻为第一个数据量采集的时刻,之后的数据按程序里设置的间隔时间累加,所以会出现此情况。
注:如果采集数据过多,而间隔时间设置过大,那么可能会相差比较大的时间。如采集10000个数据,而采集间隔时间为1秒,那么最后一个值的时间标志大概为2小时40分钟以后了。


图13

关键词
Rawdata,BSEND/BRCV,AR_SEND,PDU,通信


您可以前往全球资源库查看此文档

剩余80%未阅读,请登录后下载/查看文档

  • 评论
更多
  • 分享

    扫码分享

提示
您即将前往“全球技术资源库”。
“全球技术资源库”的用户名与本地支持中心(下载中心、技术论坛、找答案、1847工业学习平台)的用户名不通用。如果需要在全球技术资源库下载文档,您需要重新登录或注册。
确定

0元领课点我

信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。