回复:1200与第三方设备标准TCP通讯问题

LeeWheel

  • 帖子

    346
  • 精华

    4
  • 被关注

    25

论坛等级:侠士

注册时间:2004-04-20

普通 普通 如何晋级?

发布于 2017-04-20 11:24:49

4楼

展开查看
以下是引用一天到晚游泳的猪在2017-04-20 11:10:20的发言 >3楼

1200没用过,但是300的以太网通讯,不管是343-1的netpro方式,还是315-2pn/dp的cpu上的pn口走open ie方式,发送和接收的长度都必须匹配,否则就出现数据错乱的现象


这点很令人头疼,尤其是碰到modbus tcp的client模式时,作为从站是不知道主站会发来多长的报文!!!除非事先约定好,大家把报文内容确定好,把程序写死!


我找了一些官方文档,有一份关于open ie的资料,上面有这么一段话:

“tcp-ip属于流式服务,意味着发送的数据没有任何用于数据的信息,例如长度,起始和结束信息。接收端只能提供相对应的接收长度来获取正确的数据。这也就是为什么在编程是发送方的发送数据长度一定要和接收方设定的接收长度一致的原因。”


现在是写死长度也有问题,问题是肯定出在接收缓冲区,我不是说那个管脚的缓冲区,而是TCP真正的缓冲区。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15228条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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