| 作者 | 主题 |
|---|---|
|
chjdchh 侠客 经验值:738 发帖数:304 精华帖:0 |
楼主
主题:关于840d系统程序中$A_IN,$A_DBB不解!
在一些换刀之类的程序中,经常可以看到比如$A_IN[1],$A_DBB[98],$A_OUT,$A_DBW等等之类的,这些输入输出信号和变量,怎么和我plc中的信号对应起来呢?要不然我就不知道这些检测的是什么信号,读的是什么变量了?
请教朋友! |
|
格物致知 侠士 经验值:1499 发帖数:853 精华帖:1 |
楼
主题:回复:关于840d系统程序中$A_IN,$A_DBB不解!
举个例子,自己很久以前写的东西了,忘记的差不多了。
在的NC程序中会看到如下程序: N110 IF ($A_DBB[42] B_AND 1)==1 GOTOF LoadReq ;load request N120 IF ($A_DBB[42] B_AND 2)==2 GOTOF UnloadReq ;unload request N9010 $A_DBB[42] = 0 ;delete order 在加工程序中经常看到$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://www.liangjingli.com
|