技成培训网 技成学习APP 技成工具箱 技成企业服务

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 技成百科 > FC块用UC调用问题

FC块用UC调用问题

刘玉蓉 发布于2014-12-08 17:21 168 0 标签:

在FC程序块里面调用了FC800程序块,用的是UC调用,这个是不带参数调用,但他下面的 P#L 22.0  P#L 32.0     P#L 18.2是干什么用。FC800里面的
 L     P##IN0
      LAR1  
      L     P##IN1
      LAR2  
的IN0和IN1是从哪里来的,这些程序是用SCL编的,现在是用语句表打开的,现在用的是UC调用,是不是IN0和IN1就没有用?

问题补充:
见图片


图片说明: 1,1   2,2  

佳答案

1、这样写就直观了。
UC  FC800
P#L 22.0 //就是#IN0
P#L 32.0  //就是#IN1
P#L 18.2//就是#IN2
程序:
L     P##IN0//就是#L 22.0
LAR1  
L     P##IN1//就是#L 32.0
LAR2  
2、转帖:
UC指令是不能传递参数的,但是并不代表UC指令不能传递地址(SETP7手册没有关于这方面的文档资料),在实际中发现UC调用FC时可以传递地址,语句的格式是: UC FCx{addr1,addr2,...,addrn}; 这种使用方法只能在STL文本状态下使用,在非文本模式下无法书写,但是可以显示,在非文本下显示的格式是:
UC FCx
addr1
addr2
addrn
有了UC调用FC的传递地址格式,我们还要知道地址和我们FC的参数对应方法: 输入参数 --> 返回参数 --> 输出参数 --> 输入输出参数 .
有了上面的方法,我们可以使用UC来调用带参数的FC了,我们还是以上面的程序为例,在OB1中使用UC调用"FC_DEMO" ,
. //其他程序代码
UC "FC_DEMO" {P#DBX 0.0,P#L 20.0,P#M 0.0};
. //其他程序代码
编译后,在非文本模式下看OB1的代码,
. //其他程序代码 
UC "FC_DEMO"
P#DBX 0.0
P#L 20.0
P#M 0.0
. //其他程序代码
我们把程序下载到PLC去执行,他的效果和使用CALL指令的效果是一样的。

若有收获,就点个赞吧!

文章来源于网络及文献如有侵权请联系站长
分享到:

微信扫一扫分享

阅读与本文标签相同的文章

相关推荐

最新文章 热门文章
最新课程 免费课程
PLC资料下载 电工电气资料下载
应用新秀
变频器故障代码查询APP
伺服故障代码查询APP
技成
手机APP
热门标签