关于840dsl $a_dbb[xx] plc fc21的问题

fc21是用于plc与nc通讯的功能块,我有一个程序,其中一个fc21 B#16#4=write 是plc把$a_dbb[xx] 置为0写到nc.那么另外一个fc21 B#16#3=read(PLC读NC)$a_dbb[xx]的值是怎么产生的呢?nc程序中写入的吗?求大神详细解答!!!

最佳答案

在加工程序中经常看到$A_DBB[n],$A_DBW[n],$A_DBD[n]等变量。那么这些变量是怎么来的呢!

这些变量在NC程序中可以进行读写;同时也可由PLC读取这些变量的值、存放到PLC的地址中;也可由PLC写这些变量的值、NC程序来读取。与PLC的数据交换在PLC的程序里完成,具体的功能由FC21这个功能块来完成。

下面看一下FC21的应用例子。

CALL  FC21    

Enable :=TRUE        解释:1=FC21 active

Funct  :=B#16#4        解释:B#16#4=write(PLC写NC);B#16#3=read(PLC读NC)

S7Var  :="HM_B_250"        解释:PLC中数据的地址

IVAR1  :=42                解释:NC中的数据地址

IVAR2  :=-1

Error  :=#Er_FC21_DPR42_wri_A2

ErrCode:=#ErrC_FC21_DPR42_wri_A2

上面的例子实现了如下功能:将PLC地址MB250里的数据写到$A_DBB[42]里。然后NC程序就可以读取了。 


http://blog.163.com/dl_forest/blog/static/39793908200982323839157/

提问者对于答案的评价:

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

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

相关推荐