故事作者:MChen

最近创作

看看TA的故事

PROFINET循环通信

已锁定

MChen

  • 帖子

    116
  • 精华

    3
  • 被关注

    45

论坛等级:侠圣

注册时间:2013-03-03

普通 普通 如何晋级?

PROFINET循环通信

2846

2

2016-05-18 16:14:08

彻查PROFINET循环通信


    前面提到PROFINET所采用循环通信的机制,分布式设备可以从时间的角度去进行分析,那么什么是时间的角度呢?就是说循环所对应的“周期”的概念。在IO系统中控制器像一个项目经理一样,要想有效的控制项目进度,必须要定期获悉项目状况,根据实际情况拿出解决方法,而作为员工的设备则需要定期的汇报各自的进度,并推进项目。图这反映了一个项目中工作内容——每日安排、每周例会、月报和季报,以及相应的周期,可以看出每隔若干工时就要进行一次项目交流之类的工作。


 


    表显示的项目安排简直就像一个“工作狂”,不过没有一点“工作狂”的精神,如何能够深入解析PROFINET的循环通信?


 为什么需要循环通信


    项目汇报的目的是方便项目经理能够及时处理出现的问题,保证项目顺利运行。作为项目经理的IO控制器(一般是PLC)运行期间是周期性处理,那么也就需要设备能够及时的输入和输出,那么作为沟通渠道的总线所要做的就是保证数据正常通信。

    先看看PROFIBUS是如何保证通信的,PROFIBUS采用环令牌总线方法,取得令牌的主站才能和从站交互数据,采用主站请求、从站应答的方式读写数据。也就说在这个项目(总线系统)中,项目经理的工作是很累的,他要定期的催要员工的工作汇报,好在他的员工还是挺敬业的,有要求马上就响应。

    而PROFINET的通信模型是生产者/消费者模型,各个通信节点是平等的,理论上可以自由传输数据。也就是说在这个项目中,项目经理的工作看上去很轻松,不用追讨员工的项目汇报。不过自由容易滋生散漫,如果完不成项目,整个团队都要蒙受损失,那么一个聪明的项目经理是需要制定强有力的制度来保证项目的运转,这就是PROFINET IO系统使用循环通信的原因。



    如图所示,在这里控制器(CPU)通过刷新过程映像区PII和PIQ来读写过程数据,而设备周期性地把过程数据输入到PII,也需要周期性的把PIQ中的过程数据输出。其中T1为CPU的循环处理周期,T2为PROFINET IO系统的更新周期。当T1>T2时,控制器的处理速度比输入输出速度慢,不能按照系统更新时间来控制设备,也就是说项目经理不能及时处理员工定期反映的问题;而当T1


循环通信之二——节拍



操作系统的发展是从单任务变为多任务,对于多任务操作系统来说,CPU还只是一个,只是将CPU的运行时间分成一个一个的时间片,每个时间片运行一个任务,由于CPU的运行速度实在是太快了,这样多个任务看起来就像是同时在运行一样,提高了多任务的执行效率。

    同样总线系统也可以将通信时间分成一个一个时间片,每个时间片传输若干设备的数据,从而提高了通信的效率。这个时间片就是节拍(Phase)。可以说,节拍就是PROFINET IO系统的心跳。


                                           

    生产流水线就是将整个工序分成若干步骤,周而复始的运转。这里请大家把图5-10想象成Smart fortwo的组装生成线,可以看到经过四个阶段(Phase)后,车子已经安装上了四个轮子、两个座椅和一个车身,一台整车新鲜出炉。

    那么节拍是怎么算出来的呢?如果有读者是做嵌入式软件出身的,那么这个概念其实挺好理解的,就是参考了ARM体系结构中的概念。ARM的系统时钟是由外部时钟(晶振)通过提高频率得到的,比如说晶振电路通常可以提供12MHz的外部时钟,ARM就通过内部的一个倍频电路,将外部时钟提高若干倍数后得到系统时钟,也可以说是ARM的节拍。

    如果读者没有接触过ARM,没关系,可以想象一下钟表内部齿轮传动的场景:人们通过上紧的发条获得周期运动的动力,带动一个齿轮转动,那么该齿轮就作为主动齿轮,其旋转周期就相当于钟表的节拍。

而在PROFINET IO系统的循环通信中,节拍也是将基准时钟间隔放大一定倍数后所得到的,这个倍数就叫做发送因子(SendClockFactor),如公式所示:

 Phase = 31.25us * SendClockFactor

    SendClockFactor的取值是2N,N为0到9之间的整数。而基准时钟间隔是31.25us,是1ms的32分之一,为什么是这个数字呢?本人目前也没有想明白,这里想问一声:“元芳,你怎么看?”

PROFINET循环通信 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

网友专栏

共有3233条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

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