STL语言模拟量批量处理

请问用STL语言编程通过FC105实现模拟量批量处理的程序是怎么写的?尽可能详细因为基础弱,感谢

最佳答案

1、STL语言编程通过FC105实现模拟量批量处理的程序是怎么写的?
批量处理必须是转换的上、下限参数一致。下面是一个信手写的程序,未经调试,但应用指针寻址的程序结构没有问题。
2、例如模拟量PIW256- PIW270(共8个通道的压力模拟量),调用FC105转换实际压力值分别送入DB20(DBW0-DBW14)中
     OPN   DB     20      //打开DB 20
      L     P#256.0          //初始读通道指针     
     LAR1  
      L     P#0.0            //初始写指针
      LAR2  
      L     8               // 8个通道的循环计数为初值
M001: T     MB    10        //计数值 送入MB 10
       L     PIW [AR1,P#0.0]   //按读指针指示的地址读通道数据
      T     MW100  //暂存通道数据
       CALL  "SCALE"//调用FC105
         IN     :=MW100  //输入暂存通道数据
         HI_LIM :=10.0 //例如,压力范围上限
         LO_LIM :=0.0  //例如,压力范围下限
         BIPOLAR:=FALSE  //极性选择,此处为单极性
         RET_VAL:=MW0 //错误信息
         OUT    :=MW102 //输出实时压力 
         L   =MW102 //实时压力
         T     DBW [AR2,P#0.0]  //按写指针指示的地址写数据
         +AR1  P#2.0            //读指针指向下一数据地址
         +AR2  P#2.0            //写指针指向下一数据地址
         L     MB    10        //取循环计数值
         LOOP  M001           //循环计数值如为0则结束循环;如不为0减1后则转向标号为M001的语句,继续循环。         
3、有关指针寻址:
见《关于S7-300和S7-400指针寻址的说明与例程(更新版)》下载:
http://www.ad.siemens.com.cn/download/SearchResult.aspx?searchText=F0215
4、有关FC105:
见《 FC105 , FC106使用与实例》下载:
http://download.gongkong.com/file/2005/12/17/FC105.doc

提问者对于答案的评价:
您回答的很清楚,感谢!那如果在模拟量处理的基础上加入一个报警程序,就是DB20中的工程量超过DB3中的报警上下限值,然后把报警状态写入DB4,那报警程序是加入之前的程序中还是另外编写一个报警程序块呢?可以的话能给出例程吗?新手不熟悉。再次感谢!

专家置评

请参照 阿鸣 - 大师  第17级 给出的答案

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月1日 上午1:37
下一篇 2018年12月1日 上午1:37

相关推荐