请帮忙讲解下列程序

前辈好,我是初学者,可否请您讲解下下列程序?每一行帮忙进行中文解释。比如: 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

相关推荐

  • 请教一下 S7-1500与S7-200可以通过以太网通讯吗?

    目前有一台 1516CPU与四台S7-200+以太网模块进行通讯,可以把CPU1516作为服务器,S7200做客户端进行通讯吗?具体如何配置? 最佳答案 可以的看完这个就…

    SIMATIC S7-200 2021年7月5日
  • S7-200中 “脉冲捕捉输入”是什么意思?

    对于I输入点:设置为脉冲捕捉输入与不设置有什么区别?不设置难道无法捕捉脉冲?是不是如果把这个I点做高速输入必须设置其为脉冲捕捉输入?不设置则这个输入无法做高速计数输入? 问题补充:…

    SIMATIC S7-200 2020年10月31日
  • 西门子温度模块

    西门子温度模块231能不能读NTC温度探头 最佳答案 NTC热敏电阻不能直接接到231模块。EM231模块只能接受电流或者电压信号。就算你想建立电阻与电压的关系,此时电阻与电流电压…

    SIMATIC S7-200 2017年6月24日
  • PC/PPI Cable无法设置

    S7-200软件STEP 7-Micro/WIN,无法设置PC/PPI Cable,双击或者选择后点击属性均很久没反应,很长时间后跳出出错提示。该错误出现的经过…

    SIMATIC S7-200 2020年11月1日
  • TD400C显示乱码怎么回事?

    我想在一个报警上显示三相电流和相电压,因此我插入了四个PLC数据,全部设为REAL类型,不可编辑,小数点后0位,结果显示不全,还出现了一串eeeeeeeee,这是咋回事呢? 最佳答…

    SIMATIC S7-200 2020年11月1日
  • s7-200 出现重启的原因

    s7-200  DC/DC/DC  共用一个24V电源1、温度有关吗?2、用户程序错误会引起吗?3、共用电源或电源质量有关吗?s7-200&…

    SIMATIC S7-200 2018年12月5日
  • plc400与plc200通讯偏移地址的问题?

    我司的一个plc200作为从站与CPU414-5H通讯,plc400侧设的地址设的是100-115偏移量600如图,为什么plc400侧地址例如I111.5对应的PLC200侧地址…

    2017年5月28日
  • 200PLC回零问题

    请问大家用200PLC的Q0.0,Q0.1,Q0.2,Q0.3控制伺服,请问大家调用MAP指令库,开机第一次回零轴是在原点和负限位附近,回零完成到一个位置,以后的每次回零都是在正限…

    SIMATIC S7-200 2017年12月8日
  • 求:模拟量的输出程序

    求:模拟量的输出程序  哪位大侠帮帮忙啊? 最佳答案 AQW语句直接输出程序,数字量IN根据实际的情况进行计算 比如说要输出量程0-5V电压,根据运算…

    SIMATIC S7-200 2021年7月5日
  • S7200与台达变频器通讯ASCII码校验部分

    S7200与台达变频器通讯ASCII码校验部分的程序,哪位大侠可以提供?我的邮箱wgq7391@163.com 最佳答案 参考:西门子S7-200PLC与台达变频器的通讯控制与应用…

    SIMATIC S7-200 2020年10月31日