接触840D系统有段时间了,看过不同机床的MCP面板地址的定义,总感觉有点困惑,现贴出来大家指点一下的。
现场一台840D系统是这么调用的:
CALL FB 1 , DB7
MCPNum :=1
MCP1In :=P#DB100.DBX0.0 DWORD 6
MCP1Out :=P#DB100.DBX8.0 DWORD 6
MCP1StatSend :=P#DB100.DBX16.0 DWORD 6
MCP1StatRec :=P#DB100.DBX20.0 DWORD 6
MCP1BusAdr :=6
MCP1Timeout :=S5T#700MS
MCP1Cycl :=S5T#200MS
MCP2In :=P#DB100.DBX24.0 DWORD 6
MCP2Out :=P#DB100.DBX32.0 DWORD 6
MCP2StatSend :=P#DB100.DBX40.0 DWORD 6
MCP2StatRec :=P#DB100.DBX44.0 DWORD 6
MCP2BusAdr :=7
MCP2Timeout :=S5T#700MS
MCP2Cycl :=S5T#200MS
MCPMPI :=FALSE
MCP1Stop :=FALSE
MCP2Stop :=FALSE
MCP1NotSend :=FALSE
MCP2NotSend :=FALSE
BHG :=2
BHGIn :=P#DB100.DBX48.0 DWORD 6
BHGOut :=P#DB100.DBX56.0 DWORD 6
BHGStatSend :=P#DB100.DBX76.0 DWORD 6
BHGStatRec :=P#DB100.DBX80.0 DWORD 6
BHGInLen :=B#16#6
BHGOutLen :=B#16#14
BHGTimeout :=S5T#700MS
BHGCycl :=S5T#400MS
BHGRecGDNo :=2
BHGRecGBZNo :=2
BHGRecObjNo :=1
BHGSendGDNo :=2
BHGSendGBZNo :=1
BHGSendObjNo :=1
BHGMPI :=FALSE
BHGStop :=FALSE
BHGNotSend :=FALSE
NCCyclTimeout :=S5T#200MS
NCRunupTimeout:=S5T#50S
ListMDecGrp :=0
NCKomm :=TRUE
MMCToIF :=TRUE
HWheelMMC :=FALSE
MsgUser :=12
UserIR :=FALSE
IRAuxfuT :=FALSE
IRAuxfuH :=FALSE
IRAuxfuE :=FALSE
UserVersion :=
MaxBAG :=
MaxChan :=
MaxAxis :=
ActivChan :=
ActivAxis :=
UDInt :=
UDHex :=
UDReal :=
这台面板的地址怎么看,正好找几个报警时找到了I7.7这个点结果在面板上面找到了,我理解的是这个面板的地址应该定义为DB100里面吧,
现场另外一台机床是这样的:
CALL FB 1 , DB7
MCPNum :=1
MCP1In :=P#I 0.0
MCP1Out :=P#Q 0.0
MCP1StatSend :=P#Q 8.0
MCP1StatRec :=P#Q 12.0
MCP1BusAdr :=6
MCP1Timeout :=S5T#1S400MS
MCP1Cycl :=S5T#200MS
MCP2In :=
MCP2Out :=
MCP2StatSend :=
MCP2StatRec :=
MCP2BusAdr :=
MCP2Timeout :=
MCP2Cycl :=
MCPMPI :=
MCP1Stop :=
MCP2Stop :=
MCP1NotSend :=
MCP2NotSend :=
BHG :=
BHGIn :=
BHGOut :=
BHGStatSend :=
BHGStatRec :=
BHGInLen :=
BHGOutLen :=
BHGTimeout :=
BHGCycl :=
BHGRecGDNo :=
BHGRecGBZNo :=
BHGRecObjNo :=
BHGSendGDNo :=
BHGSendGBZNo :=
BHGSendObjNo :=
BHGMPI :=
BHGStop :=
BHGNotSend :=
NCCyclTimeout :=S5T#200MS
NCRunupTimeout:=S5T#1M10S
ListMDecGrp :=
NCKomm :=TRUE
MMCToIF :=
HWheelMMC :=
MsgUser :=18
UserIR :=
IRAuxfuT :=
IRAuxfuH :=
IRAuxfuE :=
UserVersion :=
MaxBAG :=
MaxChan :=
MaxAxis :=
ActivChan :=
ActivAxis :=
UDInt :=
UDHex :=
UDReal :=
这一台机床I7.7在面板上就能理解了。向大家请教一下,我这两个地方理解有没有问题。这两个调用有什么不同,为什么最后地址还是一样的了。是不是DB100在程序里面又重新处理了的。谢谢