回复:应用探讨——PLC间的以太网通信,选择TCP/IP还是S7——发帖整理

  • 帖子

    3917
  • 精华

    20
  • 被关注

    26

论坛等级:奇侠

注册时间:2003-06-16

普通 普通 如何晋级?

发布于 2011-05-10 19:18:27

41楼

quote:以下是引用凡烨在2011-04-27 14:46:46的发言:
quote:以下是引用四书五经在2011-04-27 13:14:43的发言:
谢谢凡大侠!但是还有些疑问如下:
The difference in the transfer procedure begins at a user data length of 241 bytes. From this length on you must no longer use the FCs "(FC5) - PLC_Send" and "(FC6) - PLC_RECV". Here you have to use the FCs "(FC50) - PLC_LSEND" and "(FC60) - PLC_LRECV". These FCs check the length of the data to be sent. If it is longer than 240 bytes, FC initializes the CP. Then the CP handles the transfer of the data. This transfer uses PUT and GET jobs instead of reading/writing the data record.
上面的内容大致是说,当通讯字节时大于240字节时,不能使用FC5/FC6,只能使用FC50/FC60。(这点能理解,但为什么S7400的FC5,FC6不能传送大于240字节的数据,而S7300的可以?)当使用FC50/FC60时,FC会初始化CP,由CP控制数据传送(难道采用FC5,FC6就不是由CP控制数据传送?如何理解这句话?)这个传送使用PUT/GET功能代替读写数据记录(如何理解这个PUT/GET?)。
您说的SFC58/SFC59读写数据记录的周期取决于CPU的扫描周期。S7300,S7400都是采用SFC58/SFC59与CP进行数据交换?读写周期都同步于CPU的周期就是同步SFC调用?
S7通讯的端点为什么是CPU?是不是就是因为需要CPU进行应答和确认啊?


这个FAQ是2002年的,现在可以忽略这个问题,肯定的是使用CP443-1,即使是FAQ中提到的CP卡,大于240时,不会占用CP和CPU的任何S7连接资源,所以PUT和GET这里不能按照PLC的PUT/GET来理解。应该同样加“引号”。按照我的理解就是时间片和程序通信的不同。
对于SFC58/59,前面提过,在中央机架的使用是同步的,AG_SEND/AG_RECV对于400来说也是使用SFC58/59的,但对于大于240,300行而400不行,取决于400的产品设计,这个到没有什么,就好像UDP最大的数据量是2048,TCP是8192一样。
S7的终点永远都是CPU,火麒麟曾经提到过,但是正如我说使用S7通讯的Cp343-1的Address details中end point是CP343-1而不是CPU300,在于CP343-1在真正的执行终点的任务,即S7数据的处理,而CPU像您所说,进行应答和确认,因为S7的协议属于应用层!应用层你能够体会!


评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

通信与网络组件

共有4448条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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