回复:技术专题探讨-WinCC 与 S7-300/400 通信设置和优化

四书五经

  • 帖子

    762
  • 精华

    58
  • 被关注

    30

论坛等级:侠圣

注册时间:2005-12-23

普通 普通 如何晋级?

发布于 2009-04-28 15:34:54

0楼

不管是否使用周期读服务,只要不使用加Wait的函数,则WINCC都是使用异步通信机制与PLC进行通讯。昨天,我做了一个实验,硬件环境为CPU314C-2DP,CP343-1,装有WINCC的笔记本。
首先正确组态,下载硬件。然后在WINCC中建立S7-TCP/IP连接,再建立30个TAG,类型为浮点型,地址分别为MD0、MD4、...MD120。在全局动作中编如下程序:
float i,j,k;
i=GetTagDouble("NewTag_1");
j=GetTagDouble("NewTag_2");
SetTagDouble("NewTag_21",i+j);
...
脚本中含如上代码共10个,全局动作采用周期性触发,触发周期设为1S。使用周期性服务,采用异步通信机制,第一次运行时间较长,为1594MS,说明映像区里没有数据,需要从PLC读取数据(并在映像区中进行了注册),以后整个脚本的运行时间基本为0MS(不是毫秒级的),运行速度非常快,WINCC根本没有直接与PLC进行通讯,只是从映像区中读取了数据。把周期性服务关掉,函数不加WAIT,第一次运行时间为1250MS,同样,说明映像区中没有数据,需要从PLC中读取数据(并注册),以后脚本的运行时间基本为16MS,运行速度也很快,但比周期性服务的要慢一些,说明采用周期性服务对于数据采集还是很有效果的。
给4个Get加上WAIT函数后,第一次执行时间为1672,呵呵,第一次执行,不管是同步还是异步执行时间都差不多,以后执行周期基本为600MS,说明加WAIT的函数后是同步通讯,执行时间明显加长。
管理员注:本帖已被纳入此次探讨发帖整理,请点此详阅
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32575条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。