技术论坛

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

返回主题列表
作者 主题
西门子学习通讯
游民

经验值:149
发帖数:6
精华帖:1
楼主    2023-12-13 16:13:20
主题:西门子的tcp/ip和rs232通讯转发实时性太差,是不是一定有固定的损耗,不能减去吗

我们公司搞了个研发任务,我们公司是用单片机做物流线的,我们的单片机在线路上通过can通讯把一些扫码的信息做上传到主控单片机上,然后通过rs232通讯P2P指令发送到我们的1200系列plc,当然也是带cm1241 rs232模块的。然后我再通过plc自带的tcp/ip通讯也就是T-SEND指令发送到我们的pc上位机(是电脑,不是hmi,用pc把一些数据传送到服务器的),这个过程我用串口助手调了一下,模拟单片机向plc发送信息,同时用tcp串口模拟电脑接收信息,目前调的这个过程是12ms~50ms不等。我一开始是和模块参数设置有问题,识别结束用的默认的超时识别结束,时间一来一回有300ms左右,后来改了识别结束是固定长度的,我测了光从串口到电脑的时间都要12ms~50ms,而且我用串口助手定时50ms发送丢包丢的厉害,经常收到的数量和发送的数量对不上。我一开始咨询了公司合作伙伴的技术,说可能是因为同事时进行的程序太多导致的需要加判断,但我把程序删除只剩下一个串口的收和tcp的发依旧是这么长的延迟,这样看过来也不是程序量的问题了,然后我在提问区问了这个问题,测试下是串口慢还是tcp满,然后我也试了下tcp发到tcp,串口rs232发到串口依旧还是这么长的(12ms~50ms)的延迟。我看了下在线,一个周期也就1~2ms,不知为何有这么大的延迟。我们别的项目如有轨车rgv的基站发送速率是1ms为单位发送信息,丢包率也只有万分之一的,而且公司说西门子传输速率那么高的,这么低一定是有问题。可我是个工控小白,解决了能收能发,但解决不了这个速率的问题了。

西门子学习通讯
游民

经验值:149
发帖数:6
精华帖:1
13楼    2023-12-15 11:07:10
精华帖  主题:回复:西门子的tcp/ip和rs232通讯转发实时性太差,是不是一定有固定的损耗,不能减去吗

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

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