倍福TwinCAT3的NCI使用,M函数怎么处理?

B站影视 2024-11-21 01:01 3

摘要:// Funtion ItpGetHskMFuncnMFunctionNum := ItpGetHskMFunc(sNciToPlc:= NciToPlc);//Function Block ItpConfirmHskfbConfigHsk(bExecute:

使用的ItpGetHskMFunc(sNciToPlc:= NciToPlc);这个Function获取当前触发的M函数

这是一个Function,所以可以直接使用,返回类型是一个Int类型。

// Funtion ItpGetHskMFunc

nMFunctionNum := ItpGetHskMFunc(sNciToPlc:= NciToPlc);

//Function Block ItpConfirmHsk

fbConfigHsk(

bExecute:= bExecuteRestHsk,

sNciToPlc:= NciToPlc,

sPlcToNci:=PlcToNci ,

bBusy=> ,

bErr=> ,

nErrId=> );

收到M函数后,可以处理要处理的逻辑,然后使用ItpConfirmHsk来对M函数进行复位,复位后,继续执行后面的G代码;

注意,这个复位时Execute,上升延有效;所以G代码里有多组M函数时,每次Reset完M函数后,需要对Execute也进行复位,以便下次正常复位。

如果M函数里定义的是Fast类型,则需要使用

ItpResetFastMFunc这个功能块对M函数进行复位。

具体如何操作,测试后再说!

来源:汽车魅力一族

相关推荐