S7200 重启后 系统继续从上一次的操作开始执行

S7200 重启后 系统继续从上一次的操作开始执行

 就是M位以及定时器等状态继续保持

问题补充:
s7 200 存储区中的MB0至MB13默认是断电永久保持吗?如果是,我不想让他们断点自动保存,应为我程序中用到了这些位,不想CPU重启后还是保持原状态,应该从新初始化,应该如何设置?

   
   既然MB0至MB13默认不是断电永久保持,那么我重启CPU后为什么M位 和定时器都保持原来的状态?我已经修改了系统块,全部改为了VB  0  0了,下载进去后,运行-》关机-》重启,通过状态监控,居然还是从断电前的状态继续执行。什么原因

  
  “所有的状态都是程序执行的结果!!!!这和断电保持是两回事,不要混淆!因为你上电后程序运行了。”
  我真的有点不明白了,我说的保持原来状态就是:
  我举个例子,:断电前,其中一个定时器Tx中的值为2880,我断电以后重启,在观察发现这个定时器接着从2880开始了,根本就没有从0接着开始。再举各例子:断电前 M0.0为1,断电后重启观察发现M0.0还是为1

  

 

 

 
 看看这个
  “开机后数据的恢复:
  上电之后,S7--200将从永久存储器中恢复程序块和系统块,然后S7--200将检查超级电容和可选电池卡是否安装。如果是,则它将确认数据是否已成功地存储到RAM存储器。如果数据保存成功,则用户数据存储器的保持区将保持不变。而V存储器的非保持部分将根据永久存储器中的数据块内容来恢复。其它存储区的非保持部分则被清空。
  如果RAM的内容没有保留(比如在扩展电源故障之后),则S7--200将清除所有用户数据区,将保持数据丢失存储器位(SM0.2)置位,并读取永久存储器的数据块内容来恢复V存储器,如果M存储器的前14位已预设为保持,则S7--200还将读取永久存储器恢复这些位的内容。”
 对于这些我是这样理解的,看我理解的对不对:
 在CPU执行过程中,系统断电,系统会将程序和程序所执行的最后状态一起保在永久存储器中。系统在重启后会将程序以及其断电事最后的状态一起复制到RAM执行,所以就出现了我之前所描述的情况,这样理解对不对,之所以出现这种情况是因为我对系统快的设置没弄好,之所以没弄好,是因为我配置好后下载并没有断电再重启,正确的做法是我下载时将程序、数据块和以及配置好的系统块一起下进去后,应该将CPU断电,而不是重RUN-》stop-》run,这样其实程序还是从断电前的状态执行,这样理解不知对否?

 

 

最佳答案

 建议你看看这个:考考初学者http://www.ad.siemens.com.cn/club/bbs/post.asp?b_id=3&a_id=499567&s_id=0&num=23#anch
   帖子里可能没图片了,我把完整的发你邮箱里了,注意查收!

  

    

    系统块更改后要下载才有效!
     在断电数据保持区,将范围0到范围5后面的6个清除按钮都按一下,然后确认,然后下载。
     一定要断电再上电,从STOP到RUN是没用的。

     
     看看这个
      开机后数据的恢复:
      上电之后,S7--200将从永久存储器中恢复程序块和系统块,然后S7--200将检查超级电容和可选电池卡是否安装。如果是,则它将确认数据是否已成功地存储到RAM存储器。如果数据保存成功,则用户数据存储器的保持区将保持不变。而V存储器的非保持部分将根据永久存储器中的数据块内容来恢复。其它存储区的非保持部分则被清空。
      如果RAM的内容没有保留(比如在扩展电源故障之后),则S7--200将清除所有用户数据区,将保持数据丢失存储器位(SM0.2)置位,并读取永久存储器的数据块内容来恢复V存储器,如果M存储器的前14位已预设为保持,则S7--200还将读取永久存储器恢复这些位的内容。

      我重启CPU后为什么M位 和定时器都保持原来的状态?
      所有的状态都是程序执行的结果!!!!这和断电保持是两回事,不要混淆!因为你上电后程序运行了。

      另外在断电数据保持区 6个全部清楚了吗?没清除的还会保持。

      s7 200 存储区中的MB0至MB13默认是断电永久保持吗?
      不是,取默认值就能达到你的要求。

      LD     I0.0
      EU
      MOVB   25, MB0
      MOVB   30, MB14

      将系统块里断电数据保持取默认值后和上面程序一起下到CPU,然后强制I0.0=1,再取消强制
      可以看到MB0=25,MB14=30,断电再上电,再看MB0和MB14的值就明白了。

          
      1 在系统块的断电数据保持里面可以做相应的设置
        如果取默认值,那么V区,定时器和计数器的当前值,MB14-MB31被保持,直到电池或电容失效

      2 保持的地方是RAM(运行存储器),不是永久存储器。

      3 注意MB0-MB13默认是不保持的,这是个特殊的区域,因为它有对应的EEPROM区,如果它被设置,那将被保持到EEPROM里,而不是RAM里。

提问者对于答案的评价:
非常感谢LaoHuai 以及其他网友的精彩回答,我这个菜鸟终于把这个弄明白了,再次感谢LaoHuai的“考考初学者”,图文并茂,甚是精彩

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc353709.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午1:38
下一篇 2021年7月5日 上午1:38

相关推荐

发表回复

登录后才能评论