S7300如何做变量指针

例如在PLC程序多个阀门的多个 模拟量的指针,大家是怎么实现的?
能否给出实例?

最佳答案

是用指针的程序读取模拟量通道的数据吗?简单来说,就是编写一个FC块,定义好输入的变量,然后将模拟量的数据存放到一个DB块里。
      L     P##InFirst      //定义的pointer指针,输入变量
      LAR1  
      L     W [AR1,P#0.0]
      T     #tt1                        //取出指针对应的DB块的号
      OPN   DB [#tt1]             //打开这个块
      LAR1  P#0.0                  //地址寄存器1赋值
      L     #PiwFirst                //模拟量的地址,输入变量
      ITD   
      SLD   3
      LAR2                           //将模拟量的输入地址传给地址寄存器2
      L     #Num                   //#Num 是要处理的模拟量的个数
Next: T     #LoopNum         //#LoopNum   是temp变量
      L     PIW [AR2,P#0.0]
      T     #PiwInUse                //将模拟量取出
      CALL  FC   105
       IN     :=#PiwInUse
       HI_LIM :=100.0
       LO_LIM :=0.0
       BIPOLAR:=false
       RET_VAL:=#tt2
       OUT    :=#tt3
      L     #tt3
      T     DBD [AR1,P#0.0]
      +AR1  P#4.0
      +AR2  P#2.0
      L     #LoopNum
      LOOP  Next
     NOP  0

提问者对于答案的评价:
多谢了 给 我不少启发,RENHQ的资料很好

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

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

相关推荐