多个位置控制数据表同时启动
此指令将同时启动多个位置控制数据表。位置控制数据表的数量通过s1_dutMultipleChannels指定。每个位置控制数据表都使用Configurator PMX控制指定的单轴。可以启动E点控制、P点控制和C点控制的表。
输入
存储要同时启动的数据表编号的数据寄存器的起始区域
如果操作数的值超出范围,将出现运算错误。
当满足系统停止、紧急停止、限制停止和减速停止的条件时,停止操作优先。
当指定通道的系统寄存器不是[脉冲输出 [表运算]]时,将出现运算错误。
仅当所有指定通道可以启动时,才会同时执行。如有任何指定通道的状态为“正忙”,则不会同时启动位置控制数据表,并将终止过程。使用FP_POS_UNIT_GET_STATUS了解每个通道的状态。
使用F380_Positioning_Start启动线性插补。当已通过F383_Positioning_StartMultiple指定插补轴控制的表时,将出现自诊断错误(位置控制运算错误)。
s1_dutMultipleChannels将启动每个通道的指定位置控制数据表编号。
只能指定执行单轴控制的位置控制数据表。
位置控制数据表编号的有效范围为0–20。 如果将0指定为位置控制数据表编号,则将从同时启动中排除通道。
如果使用索引寄存器指定的区域超出限制。
如果通道或位置控制数据表编号超出允许范围。
如果尚未在系统寄存器中设置[脉冲输出 [表运算]]。
如果使用索引寄存器指定的区域超出限制。
如果通道或位置控制数据表编号超出允许范围。
如果尚未在系统寄存器中设置[脉冲输出 [表运算]]。
所有用于编程此函数的输入和输出变量已在POU头中声明。 所有编程语言使用相同的POU头。
VAR
bStartMultiple: BOOL:=FALSE;
dutChannels: F383_MultipleChannels_DUT;
END_VAR
当变量bStartMultiple从FALSE变为TRUE时,执行此函数。
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_F,F383_Positioning_StartMultiple!,,11,1,25,5,,?DEN?Ds1_dutMultipleChannels?AENO);
B(B_CONTACT,,bStartMultiple,4,2,6,4,);
B(B_VARIN,,dutChannels,9,3,11,5,);
L(1,3,4,3);
L(1,0,1,5);
L(6,3,11,3);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF (bStartMultiple) then
F383_Positioning_StartMultiple(s1_dutMultipleChannels := dutChannels);
END_IF;