关于STL语句表一段程序,请教

如下程序,功能是比较实际位置在设定位置与允许偏差间FC块BR位有信号,驱动条件。
下面程序,有三个定义输入 IstPos,SollPos,PosTol,分别是实际位置,设定位置,以及允许偏差。其余全部是临时变量
现在我对Net1和Net3比较不明白,这是做什么用的
net1: TAR1  #AR1_SAVE                  
      TAR2  #AR2_SAVE               
      L     DBNO
      T     #DB_SAVE                   
      L     DINO
      T     #DI_SAVE   
net2: L     #IstPos
      L     #SollPos
      -D    
      A     >=0
      JC    m001

      NEGD 

m001: NOP   0
      L     #PosTol
      <=D   
      SAVE  
net3:  LAR1  #AR1_SAVE                   
      LAR2  #AR2_SAVE                 
      OPN   DB [#DB_SAVE]             
      OPN   DI [#DI_SAVE]

问题补充:
我想知道如果没有Net1和Net3会怎么样,还有第一步传输AR1的值,这个值哪里来的, 装载DBNO,这个DBNO又是哪里来的,不都是临时变量吗?

最佳答案

net1:TAR1  #AR1_SAVE       //将地址寄存器1的数据传给变量#AR1_SAVE             
      TAR2  #AR2_SAVE       //将地址寄存器2的数据传给变量#AR2_SAVE                
      L     DBNO           
      T     #DB_SAVE        //将DBNO写入#DB_SAVE               
      L     DINO     
      T     #DI_SAVE        //将DINO写入#DI_SAVE 
net2:L     #IstPos
      L     #SollPos
      -D                    //#IstPos-#SollPos
      A     >=0             
      JC    m001            //如果#IstPos-#SollPos的值大于0就跳转到m001,如果#IstPos-#SollPos的值小于0程序继续执行
      NEGD                  //对#IstPos-#SollPos的数值求补码,这个时候得到的其实就是小于0的负数的绝对值
m001: NOP   0
      L     #PosTol         //下装偏差值,
      <=D                   
      SAVE                  //#IstPos-#SollPos的绝对值小于#PosTol 就置位BR位
net3:LAR1  #AR1_SAVE       //将原来保存的数据#AR1_SAVE 还给地址寄存器1          
         LAR2  #AR2_SAVE       //将原来保存的数据#AR2_SAVE 还给地址寄存器2             
         OPN   DB [#DB_SAVE]   //打开对应DB块的指令          
         OPN   DI [#DI_SAVE]   //打开对应DB块的指令
程序段1和程序段3中的关于地址寄存器的指令,主要是还是编程的规范,在有使用的地址寄存器的场合里,这样做的目的就是保证在调用该块后地址寄存器的值不变,特别是地址寄存器2,在调用FB块时对应的背景数据块的调用都是默认采用AR2的。
可能你的程序不全,除了比较指令外没有看到与DBNO和DINO相关的指令。
参考这个链接:http://www.ad.siemens.com.cn/service/answer/solution.aspx?Q_ID=140174&cid=1031

提问者对于答案的评价:
给力

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年10月24日
下一篇 2017年10月24日

相关推荐