CodeSys轴控指令使用方法

MC_Power指令使用方式

使用时要注意Enable和bRegulatorOn的操作次序。

Enable可保持高电平状态,通过控制bRegulatorOn,控制伺服使能开断。不要同时开断Enable和bRegulatorOn。

因为在Enable无效后,功能块不再执行,此时改变bRegulatorOn也无法生效。

下图就是同时复位Enable和bRegulatorOn参数时,Status输出仍然有效的情况。这样就会导致“明明已经复位bRegulatorOn,伺服仍然处于使能状态”的现象。CodeSys轴控指令使用方法_第1张图片

PLCopen功能块调用问题

控制伺服运动的功能块(包括MC_Stop、MC_Reset等)必须持续调用,只有被调用的指令执行完成(处于standstill状态)后不被调用才不会报错,否则报Errorstop。PS:编程应特别注意这一点,很多逻辑错误就来自于此。CodeSys轴控指令使用方法_第2张图片

MC_MoveSuperImposed与MC_MoveAdditive 

使用指令MC_MoveAdditive,该指令是在原有持续运动位移位置上增加Distance位移,并将速度改为该指令设定值。如果Distance为0就起到了只改速度的功能(JOG运行中无法实现只更改速度)。任何分离轴(discrete_motion、continuous_motion)状态下的运动都能用该指令(比如JOG、绝对位置,速度指令),比如下图,先出发绝对位置指令按速度10运行,在触发Additive指令速度增加到15,总的位置移动距离为250。

注意:MC_MoveRelative指令是在触发当前位置上移动设置相对位置, MC_MoveAdditive是叠加,有区别的。CodeSys轴控指令使用方法_第3张图片

MC_MoveAdditive指令是叠加位置、不叠加速度只重置速度,只用于discrete_motion、continuous_motion状态,不能用于synchronized_motion状态,否则指令报错,故障码34(no ready);

MC_MoveSuperImposed指令同时叠加位置和速度,能用于discrete_motion、continuous_motion和synchronized_motion状态,比如可以用于凸轮控制的从轴,只是附加一个运动。在状态 StandStill 下,功能块 MC_MoveSuperimposed 的动作类似于 MC_MoveRelative。

MC_Stop与MC_Halt

MC_Stop 将会使控制器停止并且将轴的状态设置为stopping状态。继续处理的功能块将会被终止。当轴的状态为stopping时,其他功能块将不会被允许对轴进行任何操作。当轴达到速度零,输出Done将会被立即设置为 TRUE 并且只要输入Execute 一直为 TRUE轴继续在状态stopping。如果Execute 为 FALSE 并且 Done 为 TRUE,那么轴将会到达 standstill状态。

MC_Halt控制一个被控制的轴停止。MC_Halt能终止一切运动处理功能块。速度为0输出 DONE 被置位 TRUE,状态将转化为"StandStill"。MC_Halt能被其他指令中断,这是与MC_Stop指令的不同。CodeSys轴控指令使用方法_第4张图片

 电子齿轮

CodeSys轴控指令使用方法_第5张图片

1.电子齿轮分子(RatioNumerator)可以设置为0,此时从轴减速到0,但是还是处于同步模式。分子为有符号整数;分母(RatioDenominator)不能为0,否则报675(SMC_GI_RATIO_DENOM)。分母为无符号整数

2.加减速方式与速度指令一样。

你可能感兴趣的:(PLC,运维,服务器,信息与通信,硬件工程,人工智能)