一则关于cpu300系统时钟是否受控于程序周期的关系

已锁定

WWCWWC

西门子1847工业学习平台

  • 帖子

    8036
  • 精华

    145
  • 被关注

    1335

论坛等级:至圣

注册时间:2008-07-26

钻石 钻石 如何晋级?

一则关于cpu300系统时钟是否受控于程序周期的关系

1044

7

2018-12-11 09:28:09

一则关于cpu300系统时钟是否受控于程序周期的关系

   今天,在“找答案”版区看到有这样一个提问,很具有代表性的问题,具体问题的链接:

http://www.ad.siemens.com.cn/service/answer/tobe_solution.aspx?Q_ID=205796&cid=1029#

   该网友提问,假设设置系统时钟,用户程序的扫描周期为100mS,那么,OB1中的系统时钟周期为:用户程序的扫描周期 + 系统时钟(位值)?

下面就这个关系,做一个验证,以消除疑虑。

验证:

1)  创建一个项目,定义系统时钟MB0。

2)  为验证网友的提问问题点,我采用SFC47,让用户程序在OB1中的扫描周期“调整”到100mS,其实,一般用户程序的扫描周期大概在几毫秒或几十毫秒为多数情况。

3)  为验证差异性,再定义一个循环定时中断,时间定义为1S,用这个中断的数据与OB1做验证比较。

程序:

设置系统时钟MB0(取M0.5 = 1S脉冲)


定义循环定时中断OB35,时间100mS:


编译保存项目。

在OB1编辑一个延时周期的SFC47,并编辑一个ADD_DI(+1,结果存放到MD100):


在OB35定时中断组织块中编辑ADD_DI(每100mS+1,结果存放到MD104):


继续创建一个变量表,方便监控具体数据的加1情况,将程序编译、保存下载到仿真器:


在OB1中的累加数据基本与在定时中断组织块编辑的累加1S的数据相近,由此说明扫描周期与系统时钟没有实质上的关联。

继续按网友的要求将用户程序循环延时到100mS后,再看结果:


变量表监控结果:


时间脉冲个数仍然基本一致,上图不同的原因是定时组织块的累加10次等同于1S时的差异关系,由此验证说明系统时钟不受用户程序扫描周期的影响。


一则关于cpu300系统时钟是否受控于程序周期的关系 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54049条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

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