回复:关于这个小小的问题,我请教过好多高手,但高手都不会,如果你会,那你就是高高手~~~

szy868

  • 帖子

    101
  • 精华

    6
  • 被关注

    18

论坛等级:侠客

注册时间:2006-10-24

普通 普通 如何晋级?

发布于 2007-05-25 12:58:00

0楼

这个没做过,但我觉得这个问题有实用价值,比如用在录波上。
在PLC里的数据采集到是很简单,定时采集,用表格存放就可以了,不过我觉的难点是在上位机这一块。
这里面涉及几个方面的问题:
1、变量动态定义:
如果用组态软件做上位机软件,并且采用其支持的协议(指主从协议),由于PLC内的有效数据存放地址以及数量是动态变化的,则要求所定义的变量也要是动态可变的,这个好像无法实现。
2、通讯协议:
如果在PLC内只留一对或几对A-B数据存储单元,上位机变量不动态变化,只对应于这几个存储单元,那么上位机取走旧数据后,要通知PLC旧数据已被取走,则PLC再将新的数据放在该存储单元内,等待上位机取下一批数据。这就要求上位机和PLC的通讯协议要自定义,上位机和PLC的通讯程序都要自己编写。
3、数据库与曲线控件:
上位机取数后,存入数据库内,在这里时间基准没有多大意义,主要是A数与B数要一一对应,在数据表中的每一条记录要包含一组对应的数据。曲线控件采用WINCC的曲线控件应该可行。

如果是我来做这个,我会在PLC方采用自定义通讯协议,并且采用主动上传的通讯协议来做,上位机只管被动取数,当然上位机的通讯程序也要自已编写,收到有效数据后就存放到数据库中,然后曲线显示时调用数据库中的数据来显示。当然有可能数据会丢失,如果可靠性要求不是很高,这样做要简单一些;如果要求可靠性很高,则必须要在通讯协议内加入一些握手协议,这个要麻烦一些了。
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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