请帮忙讲解下列程序

前辈好,我是初学者,可否请您讲解下下列程序?每一行帮忙进行中文解释。比如: JNB   MW   _001:Nop   等是什么意思?谢谢

首先利用系统时钟,取1秒脉冲,如m100.5(1秒)脉冲。用这个脉冲建立1小时定时器(3600秒)程序:
      A     M    950.2        //启动条件
      A     M    100.5        //秒脉冲
      FP    M    200.1
      JNB   _001
      L     MW     0
      L     1
      +I    
      T     MW     0
_001: NOP   0
////建立1小时循环////
      A(    
      L     MW     0
      L     3600
      ==I   
      )     
      JNB   _002
      L     0
      T     MW     0         
_002: NOP   0
///小于10秒激活(启动)///
      A     M    950.2
      A(    
      L     10
      L     MW     0
      <=I   
      )     
      =     M    200.0     //M200.0S是每一个小时激活10秒钟的标志位

最佳答案

这个程序的控制思路是:(实际上上次我回答的是lad梯形图,你直接复制到step7(stl)然后再转换为梯形图比较容易看懂。
首先设置在cpu系统时钟,系统时钟标志位为一个字节的时钟脉冲。建立这个时钟脉冲在cpu属性中的“周期/时钟存储器”--勾选并输入一个存储器字节,如题输入100,则MB100就是整个时钟脉冲信号了,关于时钟存储器设置:
 字节位   Bit7     Bit6     Bit5      Bit4      Bit3      Bit2      Bit1     Bit0  
 频率(Hz)   0.5     0.62        1       1.25       2          2.5        5          10
 周期(秒)     2        1.6         1         0.8       0.5        0.4      0.2       0.1 
这样MB100的第五位对应的是1秒的时钟脉冲。
      A     M    950.2        //这个是你所需要扩展启动这个定时器的条件位
      A     M    100.5        //系统时钟秒脉冲
      FP    M    200.1        //取上升沿指令,因为不加上升沿是会产生一个周期内多次加1的原因
      JNB   _001              //当逻辑的运算结果不为1时,跳转到_001,不执行加的指令,保证每一秒加一次,上升沿指令也是必须的,不然在1秒内会累加多次。
      L     MW     0
      L     1
      +I    
      T     MW     0            //MW0的累加(累加3600秒=1小时的时钟数据存储器)
_001: NOP   0
///建立1小时的循环机制/// 
     A(    
      L     MW     0
      L     3600
      ==I   
      )     
      JNB   _002                 //同样的条状指令,只要MW0等于3600就执行清零,否则不执行
      L     0
      T     MW     0         
_002: NOP   0

      A     M    950.2       //你原程序的控制条件
      A(    
      L     11
      L     MW     0        //当MW0小于11时,接通标志位M200.0
      <=I   
      )     
      =     M    200.0     //M200.0是每一个小时激活10秒钟的标志位
仔细想了想,应该写与11的比较,才比较合理,如果是与10比较,相当于只有到9秒的工作机制。

提问者对于答案的评价:

专家置评

已阅,最佳答案正确。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月29日 下午4:15
下一篇 2017年6月29日 下午4:16

相关推荐

  • 请问各位高手一个简单的问题

    我现在使用的是CPU224XP加TD400C,如果TD400C故障,我把TD400C地址、CPU地址、参数块地址等设置好后,是否TD400C就可以正常使用了,还要不要下装CPU?谢…

    SIMATIC S7-200 2020年11月1日
  • 求S7200与仪表通讯实例

    大家好,请问s7200与仪表通过modbus 和自由口应如何通讯,是否可以给我一个例子?如果通过modbus通信,需要用PLC编程软件的modbus RTU主站…

    SIMATIC S7-200 2020年10月31日
  • step7 -200 smart安装问题

    安装后,运行显示“没有找到 S7EPAAPI.DLL”,重装后现象依旧 图片说明:    最佳答案 我也遇到过这个情况 ,之后在百度搜索了这…

    2021年7月5日
  • 变频器与[s7200 222的modbus通讯问题

    变频器阿ACS510-37KW于222的modbus通讯我搞不起来,请问是不是让PLC 222做主站,变频器做从站啊?具体怎么操作阿请问,速!些! 问题补充:我做过一些p…

    SIMATIC S7-200 2020年11月1日
  • 西门子200v区的使用

    西门子200v区,比如v0.0可以像m区的m0.0一样的功能吗?还有请问一个226扩展2块32入32出,一块8模拟输入,一块4模拟输入,一块4模拟输出,两块热电阻输入模块,总共7块…

    2020年10月31日
  • S7-200电池卡问题

    我用的是CPU226CN的主机,我想保存一些过程值,在断电后十天后仍然不丢失,是不是要另选电池卡本身主机不带电池,这个电池是可以充电的吗,有的说电池是一次性的大概200天以后没电就…

    SIMATIC S7-200 2020年11月1日
  • s7 200与欧瑞变频器modbus通讯,接线

    s7 200PLC与欧瑞变频器modbus通讯时,接线应该怎么接,西门子port口,3脚为+B线,8脚为-A线,变频器侧则为A+   B-.…

    SIMATIC S7-200 2021年7月5日
  • S7 200Modbus功能码

    请问S7 200modbus的功能码(1,2,3,4,5,615,16)在modbus程序中怎样设置? 其测试软件在哪儿下载? 谢谢各位同仁!! 最佳…

    SIMATIC S7-200 2021年7月4日
  • TD400文本与S7-200无参数

    设备一致运转挺好春节放假设备停电十几天。一开机TD400文本显示无参数。是TD400文本的地址冲突了?还是PLC的程序丢失了? 最佳答案 首先这个文本的数据都存放在PLC中,如果停…

    SIMATIC S7-200 2017年12月7日
  • 请帮助解决S7-200PLC中断优先级问题

    我想用S7-200实现一个控制过程。因所学知识有限,一直没有实施。恳请点播帮助。       过程是这样的,有…

    SIMATIC S7-200 2017年7月30日