WinCC data collection

WinCC data collection

ID:40127126

大小:1.65 MB

页数:11页

时间:2019-07-22

上传者:新起点
WinCC data collection_第1页
WinCC data collection_第2页
WinCC data collection_第3页
WinCC data collection_第4页
WinCC data collection_第5页
资源描述:

《WinCC data collection》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

WinCC高速数据采集的实现在一些应用场合,需要上位机对高速变化的过程数据进行归档记录。对于一般的网络通讯方式来说,WinCC能提供的最高刷新速度是250毫秒,但WinCC采用RawData归档数据链接的方式可以实现对S7-400PLC的高速数据采集。原理是PLC将每个循环周期所采集的过程值(或PLC以其他方式得到的数据或数据包)以一定的顺序存放在具有一定的格式的DB块中,当到达一定的数量后,PLC可以调用系统功能块SFB37(AR_Send)将这个DB块主动地发送给WinCC,然后WinCC会在后台自动调用标准化DLL来拆解数据,并将其按时间顺序保存在数据库中。在WinCC的过程画面中,可以使用在线趋势控件或在线表格控件来查看所采集的数据。由于是批量传送,可以有效地提高通讯效率,使高速数据采集成为可能,而这时所谓的采集频率就取决于你对保存在DB块中的各过程值间的时间间隔的定义。可以定义的最小的时间间隔是1毫秒。但如果是PLC每个循环周期采样一次,那么定义的时间间隔应大于PLC循环周期。DB块的最大尺寸是16KB。详细信息请参见WinCC的帮助文件:WinCCSystemInformation->通讯->SIMATICS7ProtocolSuite->特殊功能->使用S7功能块AR_SEND进行数据交换。条件:1)WinCC的版本为V5.1或更高2)S7-400系列CPU3)WinCC站与S7400站建立S7连接(包括MPI,ProfiBus,TCP/IP,工业以太网都可以实现)4)编程人员能够熟练地使用Step7和WinCC本例介绍了WinCC如何实现对两个过程变量采集归档的方法。步骤:1)在S7-400站中插入一个DB块:DB1,用于存放过程数据并将它们发送到WinCC数据库中。这个块必须按照一定格式和顺序进行定义,本例中因为DB块要分别保存两个不同变量的各100个值(此值可以根据需要来设置,但请注意确保DB块的尺寸不能超过16K),所以地址DBB0-DBB220与地址DBB222-DBX444定义的数据类型是相同的,只是变量名称不同。为关键参数和变量数组设置初始值:Headertype1=Headertype2=9;NumOfPV1=NumOfPV2=100;Cycle1=Cycle12=10Unit_Type1=Unit_Type2=1;Unit_Range1=Unit_Range2=3AR_ID_SubNum1=1;AR_ID_SubNum2=2;Datatype1=2Datatype2=2关于这些参数的含义请参见WinCC的帮助文件:WinCCSystemInformation->通讯->SIMATICS7ProtocolSuite->特殊功能->使用S7功能块AR_SEND进行数据交换。 其中PV1[1⋯100]和PV2[1⋯100]分别是存放过程值数列的数组,作为示例,可在声明数组PV1,PV2后,为其随意赋一些整数值作为作为初始值。通过菜单View->DataView可以编辑初始值。 2)新建一个功能块:FB1,在其中:a)定义一个静态变量ARSend,其类型为SFB37:b)定义一个输入变量AR_ID,其类型为DWORD;然后右键单击变量,在其对象属性中分别添加S7_server和S7_a_type属性: c)在FB1中调用ARSend,并分配参数:3)新建一个FC1,建立两个局部变量:ReturnValue和Date_And_Time, 在FC1中调用FB1,DB11会自动生成:4)一个FC3,用来指定要发送的数据包的大小: 为使FC3在每次冷启动或热启动时被调用,分别插入OB100和OB101来调用FC3:5)在OB中调用FC1: 6)建立WinCC项目,建立起WinCC与S7-400的S7通讯连接,使用MPI、ProfiBus、TCP/IP、工业以太网连接都可以。因为组态通讯连接方法与普通应用相同,所以这里略过不提。在已建立好的S7连接下,新建一个变量ARSend,为原始数据类型,地址属性设置为:归档数据链接。同时分别再新建两个BOOL变量:REQ_ArSend(地址为M20.0)和REQ_TimeStamp(地址为M40.0)。7)打开WinCC变量记录编辑器,新建一个过程值归档。 a)右键单击此归档,选择“新建过程控制变量”,b)弹出“过程控制变量属性”对话框,点击“选择”按钮来选择“原始数据变量”:ARSend;“转化DLL”在下拉菜单中选为“nrms7pmc.nll”,c)然后点击“选项”按钮,设置AR_ID为1,AR_ID_Subnumber为1,点击确定。这样便建立了一个归档变量。d)重复步骤a)到c)来再建一个归档变量,设置AR_ID为1,AR_ID_Subnumber为2: e)保存,关闭变量记录编辑器。f)在WinCC资源管理器中打开“计算机属性”,在“启动”页中钩选“变量记录运行系统”。8)打开WinCC图形编辑器,新建一幅画面。放置两个IO域分别连接两个放置一个OnlineTable,选择归档变量。 9)组态完毕,激活WinCC运行系统。a)置REQ_TimeStamp为1,以使PLC给DB块打上时间戳b)置REQ_Arsend为1,以使PLC把DB块发送上来 表格中的数据即是由PLC传上来的两组过程值,显示的时间是PLC的时间。提示本文是一个简单的示例,并没有实现连续数据采集。可以考虑使用多DB块进行缓冲并添加程序控制DB块的写入和发送顺序,也能够实现连续的采集,但要充分考虑CPU的负载和循环周期。声明:对于本文所述的方法属于WinCC的高级用法,西门子公司不提供任何保证和热线支持。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
大家都在看
近期热门
关闭