回复:应用探讨——如何最大化利用 PLC CPU 资源

凡烨

  • 帖子

    119
  • 精华

    1
  • 被关注

    1

论坛等级:游侠

注册时间:2009-05-12

普通 普通 如何晋级?

发布于 2013-02-27 16:01:00

102楼

quote:以下是引用YiMoon在2013-02-26 10:17:01的发言:
quote:我需要和大家澄清一个事实。我们先假象一下,其实我们在我们的程序中如果编写了大量的读写外设的程序,例如PIW256,等。那么如果我们使用PB/PN网络,程序一执行就去到模板上去读写数据,总线通信是不是很忙?!还有在想一下,正常的,模板IO数据与CPU交换数据就是通过一帧帧报文实现的,怎会产生额外的非实时的数据交换呢?这和PB/PN的数据交换原理相违背!
这样,大家想想是你们所说去IO模板读取数据吗?这个图仅是示意图哦~

说得有道理,但是,有的时候必须要用到PIW之类的指令,而且还很多,这个还真不知道实际的机制

好,下面我和大家把CPU的访问外设的机制描述一下,大家可能首先会有个疑问,这个问题和我们的主题有什么关系?
CPU访问外设地址的途径有两个,就像大家所说的IW和PIW这两种途径,一种是CPU在读写过程映像区,另一种在读写非过程映像区,其实这两个区都在CPU内的内存中,唯一的区别就是前者保证数据一致性,而后者不能保证。还有为什么我们可以要设置过程映像区的大小?一保证你所需要的数据的一致性,二,较少可以较少CPU的循环周期。
前面大家聊到PIW读逐次逼近法的过程变量,首先无论是过程映像区内还是外,CPU读写数据(不是指令)的方式是一样的,只是数据存在不同的缓冲区(理解为映像区内或外),分布式IO模板的数据与CPU交换数据就是通过一帧帧报文实现的,CPU与这些IO缓冲区交换数据,仅此而已。然后你的指令决定你在哪个缓冲区读写数据。言归正传,实际上,我想说的在分布式IO模板读写PIW读逐次逼近法的过程变量,在转换过程中,是没有意义的,因为即使在程序中多么快,但PB/PN通信的速度决定你能多少频率的读写到IO。
来自西门子技术支持!
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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