您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > ACS双闭环控制应用
ACS控制器双闭环控制应用ACS控制器双闭环控制应用ACSDualLoopControlApplication编写:徐新阳/应用支持/ACSChinaACS控制器双闭环控制应用目录1综述.........................................................................................................................11.1双闭环的理论基础...........................................................................................11.2ACSPL+变量....................................................................................................21.2.1MFLAGS..........................................................................................21.2.2SLVRAT...........................................................................................21.2.3SLVKP..............................................................................................21.2.4XVEL................................................................................................21.2.5EFAC................................................................................................31.2.6FACC................................................................................................31.2.7Routing变量.....................................................................................32配置双闭环控制的步骤.........................................................................................52.1AXISSetup.......................................................................................................62.2负载端设置.......................................................................................................83双闭环限位问题...................................................................................................114结论.......................................................................................................................11ACS控制器双闭环控制应用11综述双闭环控制一般应用在电机和负载之间存在刚性较差的系统中,如图1所示的带传动系统。对于此类应用双闭环系统能有效克服单闭环系统的缺点,如降低刚性差和反向间隙带来的动态性能下降。图1双闭环系统本文档将结合ACS独有SPiiPlusMMI调试工具介绍双闭环控制系统的实现步骤。1.1双闭环的理论基础在ACS运动控制产品中实现轴的双闭环控制是非常方便的,用户只需把不同的编码器反馈通道或者模拟量输入分配给轴即可,但是轴和这些通道必须隶属于同一个伺服处理芯片(一般一个伺服处理芯片最多支持四个轴)。轴的双闭环控制是基于至少两路反馈通道的:负载位置反馈—用作位置环的输入电机位置反馈—用作速度环及电机换向的输入下图2为一个典型双闭环控制的框图ACS控制器双闭环控制应用2图2双闭环控制系统框图1.2ACSPL+变量以下的ACSPL+变量将应用在双闭环控制中:1.2.1MFLAGSMFLAGS是一个整数类型的一维数组,每一个元素对应系统里的每一个轴,元素有一系列的状态位组成,用来配置电机。为了把系统设置为双闭环控制,相关轴的MFLAGS的位20(#DUALLOOP)需要被置1,例如MFLAGS(0).#DUALLOOP=1,设置0轴为双闭环控制,此时二阶滤波器从速度环移至位置环中。1.2.2SLVRATSLVRAT是一个实数类型的一维数组,每一个元素对应系统里的每一个轴,用来定义位置环反馈和速度环反馈之间的减速比:SLVRAT=positionresolution/velocityresolution1.2.3SLVKPSLVKP是一个实数类型的一维数组,每一个元素对应系统里的每一个轴,用来给特定轴的速度增加一个比例系数。1.2.4XVELXVEL是一个实数类型的一维数组,每一个元素对应系统里的每一个轴,用来定义轴的最大允许速度。ACS控制器双闭环控制应用3XVEL会导致速度环比例增益SLVKP的有效值发生变化:在双闭环中,SLVKP有效值计算如下:如果XVEL[loadfeedbackcounts/sec]221时,实际增益是减小的,详见稍后的公式,其他情况实际增益是增加的。1.2.5EFACEFAC是一个实数类型的一维数组,每一个元素对应系统里的每一个轴,用来定义在原始编码器反馈的count值和控制器计算的变量值FPOS之间的因子。格式如:EFAC(axis_index)=value(value范围1-15….1+15默认值为1)1.2.6FACCFACC是一个实数类型的一维数组,每一个元素对应系统里的每一个轴,用来定义轴的加速度反馈值。1.2.7Routing变量SLPROUTSLPROUT是一个实数类型的一维数组,每一个元素对应系统里的每一个轴,用来设置对应轴的位置环反馈通道。格式如:SLPROUT(axis_index)=valueValue指定反馈来源如表1当为默认值0时,控制器支持标准的闭环控制配置,即FPOS(0)为0编码器反馈,FPOS(1)为1编码器反馈等等。当SLPROUT≠0时,表明FPOS是来源于其他编码器。例如SLPROUT(0)=104,表示FPOS来源于模拟量输入0而不是编码器,此时反馈可能是电位计或者其他能够输出模拟量表征电机位置的器件。ACS控制器双闭环控制应用4表1:SLPROUT分配数值SLVROUTSLVROUT是一个实数类型的一维数组,每一个元素对应系统里的每一个轴,用来设置对应轴的速度环反馈通道。格式如:SLVROUT(axis_index)=valueSLCROUTSLCROUT是一个实数类型的一维数组,每一个元素对应系统里的每一个轴,用来设置对应轴的速度换向反馈通道。格式如:SLCROUT(axis_index)=valueACS控制器双闭环控制应用5SLVROUT和SLCROUT的格式如同表1,具体赋值内容参见ACS软件手册文档,这里不再详述。2配置双闭环控制的步骤步骤分为两部分:电机轴端设置此时的轴是与电机有物理连接的轴号。负载端设置此时负载轴号表示负载反馈通道。通常电机轴号可以与实际电机编码器反馈通道不一样,但是本文假定电机编码器反馈通道和电机轴号一致,并且两个反馈通道都使用负载用户单位而不是count。在这种情况下,双闭环的设置是简单的,改动较少的。为了能够更好介绍双闭环的步骤,系统配置示例如下:丝杠驱动直线平台直线式编码器反馈平台位置,电机旋转编码器反馈速度及换向。用户单位:mm电机连接在axis0电机反馈编码器连接在axis0,旋转正交编码器,分辨率2000lines/revolution负载反馈连接在axis1,直线正交编码器,分辨率12500lines/mm两个反馈内部分频倍数都为4丝杠导程:25.4mm/revolutionACS控制器双闭环控制应用62.1AXISSetup我们将使用SPiiPlusMMIApplicationSthdio中的AdjusterWizard功能设置轴参数,它非常容易设置单轴参数,节省用户时间。1进入AdjusterWizard中SelectTask选项,选择轴号及选择设置新系统或控制器选项。点击Next2填写详细用户信息在Initialization窗口,然后点击NextACS控制器双闭环控制应用73AxisStructure:选择SingleMotor,RotaryMotorandLinearLoad–IndirectDrive:Lead–Screw,减速比为1(如果电机和丝杠间有减速比请填写实际值),反馈结构:Single,onmotor,用户单位作用在Load,用户单位mm。ACS控制器双闭环控制应用84继续设置直到AxisSetupandTuning步骤,跳过PositionandVelocityLoopstuning.5SavetoFlash然后退出。6计算EFAC(axis)EFAC(axis)用来定义电机反馈counts和负载用户单位之间的比例,可用下列公式计算:本文中参数计算如下:EFAC(AXIS)=25.4/(2000*4)=0.003175mm2.2负载端设置通过AdjusterWizard已经计算了参数EFAC(AXIS),下面将计算EFAC(LOAD).EFAC(LOAD)=1/(12500*4)=0.00002设置完成后可移动负载一小段距离验证EFAC设置是否正确,如果负载反馈没有改变,可用命令FCLEARLOAD清除错误,复位反馈。设置正确后将用SPiiPlusMMIApplicationStudio中的FRFAnalyzer工具进行单独位置环、速度环分析,可修改SLPKP和Bi-Quad滤波器的参数,步骤如下:1,在CommunicationTerminal里输入命令MFLAGS(AXIS).20=1,进入双闭环控制模式。2,打开FRFAnalyzer。ACS控制器双闭环控制应用93调试速度环参数,此时二阶滤波是被禁止的,因为通过MFLAGS(AXIS).20=1命令已经被移到位置环了。4轴禁止使能,计算SLVRAT(AXIS)参数,计算公式如下:本例中计算值为:SLVRAT=EFAC(AXIS)/EFAC(LOAD)=0.003175/0.00002=158.755设置轴反馈系数为负载反馈系数EFACNEW(AXIS)=EFAC(LOAD)=0.00002如果电机可以移动,可用下列步骤验证SLVRAT设置是否正确:ACS控制器双闭环控制应用10两个反馈位置清零FPOS(0),FPOS(1)轴禁止使能手动移动轴到任意位置计算FPOS(LOAD)/FPOS(AXIS),值应该接近第四步的计算值。6通过命令SLPROUT(AXIS)分配负载反馈为轴的位置反馈通道,命令定义参见表1。例如我们分配负载反馈通道从轴1到轴0:SLPROUT(0)=1017如果你想继续看到电机的反
本文标题:ACS双闭环控制应用
链接地址:https://www.777doc.com/doc-6474696 .html