回复:西门子的tcp/ip和rs232通讯转发实时性太差,是不是一定有固定的损耗,不能减去吗

已锁定

西门子学习通讯

  • 帖子

    6
  • 精华

    1
  • 被关注

    0

论坛等级:游士

注册时间:2023-10-13

普通 普通 如何晋级?

发布于 2023-12-15 11:07:10

13楼

展开查看
以下是引用yming在2023-12-14 16:23:41的发言 >12楼

我觉得你别一次次的REQ了。

就是保持连接,CONT=1

在232数据接收完成之后,使用不可中断的DB块MOVE,一次性地复制到这个TSEND_C 的DATA指针对应的发送缓冲区。(主要是保持数据的一致性。)

TSEND_C会自动发送新的数据。

实现这点,要求PC那边的服务器也同样采用固定的客户端IP连接,并保持该连接(不得在接收完成后断开连接)。


只有在远程服务器宕机、断电重启后,这边的客户端T_RESET复位连接,DONE后,TSEND_C再次REQ,请求连接。


我现在的程序就是这样的,但req必须一次次触发,每一个上升沿信号,tsend-c的cont一直是为ture,我甚至节省move,我把下位机接收和上位机发送直接用同一个buffer。我这样理解是否正确。然后非常感谢您的回复,如果没有您的回复我对于这个周期时长真的一头雾水,因为以前我完全没有做过通讯,甚至需要观察循环扫描周期的程度,在昨天也是很幸运的预约到了西门子官方工程师,他也是给了我相同的回复,不过工程师还是给我补充了两点可以提高速率的方式1.将plc cpu硬件设置的通讯负载拉满,直接将15%调到了50% 2.就是降低缓冲内的帧数,就是收到直接发不缓存,这样之后我的速率勉强从下-plc-上的周期降到了10ms

精华帖版主置评:很认真的学习,值得鼓励下

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

通信与网络组件

共有4468条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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