台达运动控制器怎么样(台达运动控制使用三)
台达运动控制器怎么样(台达运动控制使用三)位置插补原理同步机制与伺服控制3、CNC部分(G码)今天我们先从第一部分开始了解DVP15MC11T&DVP50MC11T的运动控制。首先,我们必须了解同步机制与伺服控制,因为两个控制器都是总线型的控制器,所以就必须有一个同步周期来协调控制器与执行器(伺服)之间的动作,先看看下图:
大家好,我是气球哥
今天开始,我们一起学习DVP15MC11T&DVP50MC11T的运动控制部分,这部分可以说是重中之重,所以我将它分为3部分来进行介绍。
1、一般运动(P TO P,速度,扭矩等)
2、电子齿轮、电子凸轮部分
3、CNC部分(G码)
今天我们先从第一部分开始了解DVP15MC11T&DVP50MC11T的运动控制。
首先,我们必须了解同步机制与伺服控制,因为两个控制器都是总线型的控制器,所以就必须有一个同步周期来协调控制器与执行器(伺服)之间的动作,先看看下图:
同步机制与伺服控制
位置插补原理
对于同步周期的理解,大家可以认为,在每一个同步周期后控制器都会对伺服位置进行修正一次,如果伺服运动的状态与控制器设定的值出现偏差时,控制器会让伺服加速或减速来修正到理论位置。
除了同步周期外,DVP15MC11T&DVP50MC11T引入了Jerk(加速度变化率),和Buffer_Mode参数。
运动指令块
Jerk:加速度变化率,即Acc或Dec对时间T的导数(速度v对时间t的二阶导数)描述Acc或Dec的变化速度。
Buffer_Mode:轴在运动指令的控制下运动,在此过程中,可以触发其它运动指令执行,且前后两个运动指令之间有6种交接方式可选择
Buffer_Mode
aborting
BufferMode=mcBuffered
BufferMode=mcBlendingLow
Buffer_Mode=BlendingPrevious
Buffer_Mode=mcBlendingNext
Buffer_Mode=mcBlendingHigh
Buffer_Mode的6种情况都是用于两个运动指令之间的交接的,取决于后一指令!
DVP15MC11T&DVP50MC11T的状态机如下:
状态机
好了,了解以上的状态机后就可以进入实质的操作了。首先组态硬件
轴参数说明
齿轮箱输入与输出: 根据实际机构中的齿轮箱(减速机)的齿轮比进行设置。
机构导程: 机构导程为齿轮箱输出轴每转一圈,对应终端执行机构产生的位移量。 若机构为丝杠,则机构导程为丝杠的螺距。
设置好后就可以进入编程了,以下是DVP15MC11T&DVP50MC11T支持的基本运动指令:
基本运动指令
1、伺服使能
MC_Power指令用于对轴进行使能或解除使能:
输入参数Enable为TRUE时,控制轴使能,为FALSE时,控制轴解除使能;
输出参数Status为TRUE时,表示轴处于使能状态,为FALSE时,表示轴处于解除使能状态;
除管理类以外的其他运动控制指令均需在使能状态下执行;
当输入参数EnablePositive为TRUE时, 允许轴正向运转;为FALSE时, 禁止轴正向运转, 若指令控制轴正向运转,则该指令的执行将中断并报错;
当输入参数EnableNegative为TRUE时, 允许轴反向运转,为FALSE时, 禁止轴反向运转, 若指令控制轴反向运转, 则该指令的执行将中断并报错;
执行原点回归(MC_Home)或扭矩控制(MC_SetTorque)时, MC_Power指令对轴正反转的限制无效;
LD
或使用ST编辑
MC_Power1(EN:= TRUE
Axis:= 1
Enable:= %MX100.0
EnablePositive:= TRUE
EnableNegative:= TRUE
BufferMode:= 0
Status=> %MX200.0,
);
编写程序时,应注意一轴一MC_Power指令原则,若有多个MC_Power指令同时作用于同一轴时,仅最后执行的MC_Power指令有效;
轴在正向运动过程中禁止正转或反向运动过程中禁止反转,将会以当前控制轴的指令的减速度减速到0;
轴运动过程中,输入参数Enable由TRUE变为FALSE,轴的运动方式由参数BufferMode决定:
0: Aborting:当Enable由TRUE变为FALSE时,轴会立即停止运转, 且解除使能状态(状态机变为Disabled)
1:1: Buffered:当Enable由TRUE变为FALSE时, 轴不会立即变为Disabled, 仅当轴停止运转时, 状态机先进入Standstill, 一个程序周期后, 状态机再进入Disabled。
轴状态读取功能一般会使用以下3个功能块:
MC_ReadMotionState指令用于获取轴当前的运动状态(匀速、加速、减速)以及运动方向(正转、反转);
MC_ReadStatus指令用于获取轴状态(状态机);
MC_ReadAxisError指令用于获取轴处于ErrorStop时的具体错误码(伺服驱动器报警代码)
三个状态功能块
或ST:
MC_ReadMotionState1(EN:= TRUE
Axis:=1
Enable:= %MX110.0
ConstantVelocity=> CV1
Accelerating=>ACC1
Decelerating=>DEC1
DirectionPositive=> DIRP1
DirectionNegative=> DIRN1
);
MC_ReadStatus1(EN:= TRUE
Axis:= 1
Enable:=%MX110.1
ErrorStop=>ESTOP1
Disabled=> Dis1
Stopping=> STOP1
Homing=> HM1
Standstill=>READY1
DiscreteMotion=>DISMOTION1
ContinuousMotion=>CONMOTION1
SyncMotion=>SYNMOTION1
);
MC_ReadAxisError1(EN:= TRUE
Axis:=1
Enable:=%MX110.2
AxisErrorID=> ERRID1
);
鉴于篇幅问题暂时到此止,喜欢这篇文章的可以关注我,如果有好的建议或意见请留言告诉我。
谢谢!
我是气球哥!