技术论坛

关于Profinet刷新时间的疑问

作者 主题
至圣

经验值: 10022
发帖数: 2779
精华帖: 26
主题:【探讨】关于Profinet刷新时间的疑问


只看楼主 楼主 2019-09-03 12:03:56

Profinet刷新时间

通过PROFINET进行通讯,手动的刷新时间设置为4ms,那是不是意味着4ms,profinet肯定刷新完毕?

如果刷新数据量比较大的情况,有没有可能4ms刷新不了,需要8ms才能刷新完毕呢

理论上刷新的时间可以设置到1ms,当刷新的数据量达到一定程度后,应该会存在CPU刷新完不成的情况吧,

这个问题困扰了好久,西门子技术支持的意思是,只要设置4ms,肯定4ms就刷新过去了




 
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1581926&b_id=7&s_id=0&num=5

至圣

经验值: 24889
发帖数: 4534
精华帖: 10
回复:关于Profinet刷新时间的疑问


只看楼主 1楼 2019-09-03 13:49:00

具体看手册是怎么解释的?

更新时间:

     在此时间间隔之内,IO 控制器/IO 设备为 PROFINET IO 系统中的 IO 设备/IO 控制器提供新的数据。 可以为每个 IO 设备单独组态发送周期,并定义将数据从 IO 控制器发送到 IO设备(输出)的时间间隔以及将数据从 IO 设备发送到 IO 控制器的时间间隔(输入)。

   

说明 :

    根据 Nyquist-Shannon 采样定理,最迟在 IO 控制器两次执行更新循环之后,传感器的值就会发生变化。 背板总线时间和 IO 设备中的模数转换时间可能导致更大延时。 此段时间过后,可从用户程序(例如,L PEW 267)直接访问更改后的值。 如果从过程映像来访问该值,则必须将 OB1 的循环时间加上两次。



别人在休息的时候,我往前走。
以下网友喜欢您的帖子:

  
至圣

经验值: 24889
发帖数: 4534
精华帖: 10
回复:关于Profinet刷新时间的疑问


只看楼主 2楼 2019-09-03 13:51:24
别人在休息的时候,我往前走。
以下网友喜欢您的帖子:

  
至圣

经验值: 10022
发帖数: 2779
精华帖: 26
回复:关于Profinet刷新时间的疑问


只看楼主 楼主 3楼 2019-09-22 11:25:06
以下是引用你以为你是谁在2019-09-03 13:49:00的发言 >1楼

具体看手册是怎么解释的?

更新时间:

     在此时间间隔之内,IO 控制器/IO 设备为 PROFINET IO 系统中的 IO 设备/IO 控制器提供新的数据。 可以为每个 IO 设备单独组态发送周期,并定义将数据从 IO 控制器发送到 IO设备(输出)的时间间隔以及将数据从 IO 设备发送到 IO 控制器的时间间隔(输入)。

   

说明 :

    根据 Nyquist-Shannon 采样定理,最迟在 IO 控制器两次执行更新循环之后,传感器的值就会发生变化。 背板总线时间和 IO 设备中的模数转换时间可能导致更大延时。 此段时间过后,可从用户程序(例如,L PEW 267)直接访问更改后的值。 如果从过程映像来访问该值,则必须将 OB1 的循环时间加上两次。


谢谢,那是不是意味着如果我在和updatat time一样的中断OB中,进行+1操作,

着io device设备会存在偶尔有丢失数据的情况,就是说接收到的数据有可能差值是2,而不是1。因为有可能两个扫描周期才能刷新数据,所以有可能会丢失数据?



 
以下网友喜欢您的帖子:

  
至圣

经验值: 13937
发帖数: 2008
精华帖: 43
回复:关于Profinet刷新时间的疑问


只看楼主 4楼 2019-10-22 11:10:35

1:PN网络上最小的数据循环周期决定于IO控制器的发送时钟;

2:PN 网络上,IO 设备完成接受或者发送数据到IO控制器的周期 决定于整个网络中更新时间最慢的设备;

3:更新时间快的IO设备,在一个完整的数据循环周期内,被拆分为多个阶段 Tp;

Tp=发送时钟因子*31.25微妙

发送时钟因子=发送时钟/1毫秒*32(可以按照这个来计算)

比如 发送时钟为1毫米,那么Tp为=1毫秒,网络2个设备 一个更新时间为1毫秒,一个为2毫秒,那么为毫米更新时间的设备在2个Tp内完成完整的数据循环

4:对于更新时间慢的IO设备,在那个Tp内进行数据交换 ,需要根据Ta来确定

看图 好理解一点,下图 ,发送时钟为1毫秒,D1更新时间为1毫秒,D2为2毫秒,D3为4毫秒,所以完整的数据循环周期决定于D3为4毫秒



5:根据以上原则,在设置参数时,尽可能的降低发送时钟(取决于你需要最小更新时间的IO设备),增大部分设备的更新时间,这样来保证网络负载的均匀,理论上上网络更新时间快于程序扫描时间 的一倍以上,就不存在丢信号的问题


人生就像一场旅行!
以下网友喜欢您的帖子:

  
至圣

经验值: 10022
发帖数: 2779
精华帖: 26
回复:关于Profinet刷新时间的疑问


只看楼主 楼主 5楼 2019-10-23 10:30:28
以下是引用Letham在2019-10-22 11:10:35的发言 >4楼

1:PN网络上最小的数据循环周期决定于IO控制器的发送时钟;

2:PN 网络上,IO 设备完成接受或者发送数据到IO控制器的周期 决定于整个网络中更新时间最慢的设备;

3:更新时间快的IO设备,在一个完整的数据循环周期内,被拆分为多个阶段 Tp;

Tp=发送时钟因子*31.25微妙

发送时钟因子=发送时钟/1毫秒*32(可以按照这个来计算)

比如 发送时钟为1毫米,那么Tp为=1毫秒,网络2个设备 一个更新时间为1毫秒,一个为2毫秒,那么为毫米更新时间的设备在2个Tp内完成完整的数据循环

4:对于更新时间慢的IO设备,在那个Tp内进行数据交换 ,需要根据Ta来确定

看图 好理解一点,下图 ,发送时钟为1毫秒,D1更新时间为1毫秒,D2为2毫秒,D3为4毫秒,所以完整的数据循环周期决定于D3为4毫秒



5:根据以上原则,在设置参数时,尽可能的降低发送时钟(取决于你需要最小更新时间的IO设备),增大部分设备的更新时间,这样来保证网络负载的均匀,理论上上网络更新时间快于程序扫描时间 的一倍以上,就不存在丢信号的问题

一个为2毫秒,那么为毫米更新时间的设备在2个Tp内完成完整的数据循环

这个地方是不是漏了个数,是1ms还是2ms呢?


PN 网络上,IO 设备完成接受或者发送数据到IO控制器的周期 决定于整个网络中更新时间最慢的设备

这个地方我也不是太理解

比如我们刷新时间有1ms还有10ms的设备,由于10ms的设备存在,1ms设备需要10ms才能发送到io控制器吗? 我的理解应该两者应该相互不影响吧

1ms的设备理论上1ms就可以刷新一次,在PLC中,如果我1ms的定时中断中使用外设的方式应该是可以直接读取到状态的变化吧?


 
以下网友喜欢您的帖子:

  
  • 上一页
  • 1
  • 下一页
收起
关于Profinet刷新时间的疑问
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。