当前位置: 首页 - 行业资讯 - 既要实现复杂轨迹控制又要国产平台还要使用简单----雷赛自研平台轴组插补使用流程能帮到您

既要实现复杂轨迹控制又要国产平台还要使用简单----雷赛自研平台轴组插补使用流程能帮到您

2025-05-06 行业资讯 0

导语:在工业自动化生产中,高精度运动控制是实现生产效率提升和产品质量保障的关键。

在工业自动化生产中,高精度运动控制是实现生产效率提升和产品质量保障的关键。以五轴联动加工中心为例,设备需要同时控制多个运动轴按照复杂曲线路径精准运动,这对于传统的点到点移动模式来说,难以满足高精度和高效率的要求。特别是在加工圆弧型工件时,如何实现平滑的曲线插补、多轴同步运动以及高效的过渡控制,成为工控工程师面临的常见难题。

本篇文章以雷赛全自主开发PLC编程软件平台LeadStudio为例,详细介绍了轴组插补功能的实际应用,通过直线插补和圆弧插补功能,帮助开发者轻松实现多轴协同运动控制,解决复杂曲线路径下的高精度运动要求。

01、轴组插补功能介绍

LeadStudio支持直线插补和圆弧插补,插补功能以轴组方式实现。

1)每个轴组最多可控制4个运动控制轴,包括X、Y、Z三个坐标轴和一个辅助轴;

2)支持最多8个轴组,每一个轴组可以设置为2轴(XY轴),3轴(XYZ)和4轴(XYZ和辅助轴);

3)直线插补和圆弧插补支持缓冲模式,每一个轴组最多可以缓冲8条曲线,曲线之间的过渡模式可以单独设置;

4)直线插补时,代表x、y、z三个坐标轴的运动控制轴沿坐标轴运动,辅助轴从起点位置沿直线运动到终点位置;

5)圆弧插补时,可以选择xy轴平面、yz轴平面、xz轴平面中的一个平面做圆弧插补,此时如果轴组中还配置了其他轴,则其他的轴从起点位置沿直线运动到终点位置。

以下是PLC轴组(插补)的应用示例。

02、轴组指令介绍

功能块MC_MoveLinear:直线插补指令

本功能块用于控制轴组执行直线插补功能,上升沿有效。

功能块MC_MoveLinear如下图所示:

注意:

1)只有调用MC_Power指令将轴组中所有轴切换到StandStill状态才可以触发本指令。在单轴运动期间(例如正在做点位运动、回原、停止等)触发本指令无效;

2)触发本指令后单轴的PLCOpen状态机处于同步运动模式,运动期间不可以用单轴运动类指令打断,插补曲线完成后单轴的PLCOpen状态机进入StandStill状态,此时可以执行单轴的运动类指令;

3)Position用于设定目标位置或移位,Position[0]表示x轴的位置位移分量,Position[1]表示y轴的位置位移分量,Position[2]表示z轴的位置位移分量,Position[3]表示辅助轴的位置位移分量。Velocity表示插补器的目标速率,其中坐标轴的目标速度按照公式(1)、(2)、(3)分解;

4)辅助轴的插补速度分两种情况:

①当坐标轴上的点不动而单独移动辅助轴时,辅助轴按照Velocity设定的目标速度运动;

②当坐标轴上的点移动时,辅助轴将和坐标轴上的点同时到达目标位置;假设插补直线的长度为L1,辅助轴的目标位移为L2,某一个时刻插补直线的速率为V0,则辅助轴的速度Va计算方式如下:

Va=V0*L2/L1

5)移动方法MoveMode选择:

MoveMode=0表示绝对定位模式,触发本指令后三个坐标轴轴组最终运动到(Position[0],Position[1],Position[2])指定的位置,辅助轴运动到Position[3]指定的位置;

MoveMode=1表示相对定位模式,设轴组的三个坐标轴的位置为(Px,Py,Pz),辅助轴当前位置为Pa,触发本指令后三个坐标轴最终运动到(Px+Position[0],Py+Position[1],Pz+Position[2]),辅助轴最终位置为Pa+Position[3]。

6)缓冲模式BufferMode

当选择1、2、3、4、5、10这六种缓冲模式时,插补指令最多允许缓冲8条曲线。当指令进入缓冲状态时,Busy信号有效,当本条指令开始执行时,Active输出有效,当指令执行完成时,Done信号输出有效;当新加入的插补指令选择0(打断+无过渡)模式时,本条指令将打断正在执行的和处于缓冲的所有插补指令,被打断的插补指令CommandAborted输出有效。

缓冲方式是指同时启动多条插补指令时指令执行的流程,过渡方式是指多段曲线相互切换时的方式。

功能块MC_MoveCircular:圆弧插补指令

本功能块用于控制轴组执行圆弧插补功能,上升沿有效。

功能块MC_MoveCircular如下图所示:

注意:

1)只有调用MC_Power指令将轴组中所有轴切换到StandStill状态才可以触发本指令。在单轴运动期间(例如正在做点位运动、回原、停止等)触发本指令无效;2)触发本指令后单轴的PLCOpen状态机处于同步运动模式,运动期间不可以用单轴运动类指令打断,插补曲线完成后单轴的PLCOpen状态机进入StandStill状态,此时可以执行单轴的运动类指令;3)圆弧轴的指定

CircAxes指定坐标轴平面,意义如下:CircAxes=0代表选择x-y坐标轴平面,AxisID_x和AxisID_y指定的运动轴执行圆弧插补,AxisID_z和AxisID_a指定的轴为辅助轴,执行跟随运动,从起点位置沿直线运动到终点位置;

4)插补模式选择

①CircMode=0代表根据通过点进行圆弧插补:

以x-y平面为例,x轴的起始位置为Px,y轴的起始位置为Py,触发指令后将执行以(Px,Py)为起点,以(EndPoint[0],EndPoint[1])为终点并通过点(AuxPoint[0],(AuxPoint[1])的圆弧插补;

当起点和终点为同一点时,以起点(Px,Py)和通过点(AuxPoint[0],(AuxPoint[1])为直径绘制正圆。这种情况下,通过PathChoice(路径选择)指定圆弧的旋转方向;

当起点、通过点与终点在同一条直线上时不能构成圆,指令报错,停止插补指令的执行;

当通过点与终点为同一点或者起点和通过点位置为同一点时,指令报错,停止插补指令的执行;

②CircMode=1代表根据中心点进行圆弧插补:

以x轴和z轴为例,x轴的起始位置为Px,z轴的起始位置为Pz,触发指令后将执行以(Px,Pz)为起点,以(AuxPoint[0],(AuxPoint[2])为圆心,以(EndPoint[0],EndPoint[2])为终点的圆弧插补,圆弧的绘制旋转方向由PathChoice决定;

③CircMode=2代表根据指定半径进行圆弧插补:

不管选择哪个平面,圆弧的半径大小始终由AuxPoint[0]决定;

以y轴和z轴为例,y轴的起始位置为Py,z轴的起始位置为Pz,y轴和z轴执行以(Py,Pz)为起点,以AuxPoint[0]为半径,以(EndPoint[1],EndPoint[2])为终点的圆弧插补;

半径符号为负时,绘制出较长的圆弧;半径符号为正时,绘制出较短的圆弧;圆弧的旋转方向通过PathChoice(路径选择)指定;

5)移动方法选择

①MoveMode=0表示绝对定位模式:

当选择通过点时,辅助点和终点代表坐标系中的绝对点;

当选择中心点时,中心点和终点代表坐标系中的绝对点;

当选择半径时,终点代表坐标系中的绝对点;

②MoveMode=1表示相对定位模式:

当选择通过点时,辅助点和终点代表相对于起始点的相对点;

当选择中心点时,中心点和终点代表相对于起始点的相对点;

当选择半径时,终点代表相对于起始点的相对点;

6)缓冲模式BufferMode

参考直线插补指令缓冲模式;

功能块MC_GroupStop:轴组停止运动指令

本功能块用于轴组实现运动停止功能,上升沿有效。

功能块MC_GroupStop如下图所示:

注意:

1)MC_GroupStop指令仅能暂停插补类指令(如MC_MoveLinear),不能停止单轴运动类指令(如MC_MoveAbsolute);2)状态转换

在Execute的上升沿,插补器根据StopMode设置的停机方式执行停机,并打断所有处于缓冲状态的插补指令,停机完成后Done信号输出有效,单轴的PLCOpen状态机仍处于SynchronizedMotion状态。在Execute=ON期间,插补器一直处于停止状态,此时触发新的插补指令无效。在Execute的下降沿,插补器将切换到非停止状态,单轴进入StandStill状态,此时可以触发新的插补指令;

3)停止模式

StopMode设置为0时,将按照Deceleration设定的减速度减速停机;StopMode设置为1时,将立即停机,无减速过程;

功能块MC_GroupPause:轴组暂停运动指令

本功能块用于轴组实现运动暂停功能,上升沿有效。

功能块MC_GroupPause如下图所示:

注意:

1)MC_GroupPause指令仅能暂停插补类指令(如MC_MoveLinear),不能停止单轴运动类指令(如MC_MoveAbsolute);2)状态转换

①当轴组内的轴都处于StandStill状态时:

将Enable设置为ON,此时轴组内的轴仍处于StandStill状态,如果此时触发直线插补指令或者圆弧插补指令,轴组内的轴将切换到SynchronizedMotion状态,但是处于暂停状态,不执行插补算法。只有MC_GroupPause指令的Enable信号设置为OFF时才开始执行插补算法。

②当轴组内的轴都处于SynchronizedMotion状态时:

在Enable的上升沿,插补器根据Deceleration设置的减速度执行减速过程,减速完成后Done信号输出有效,单轴的PLCOpen状态机仍处于SynchronizedMotion状态,暂停期间正在执行的插补指令的Busy信号和Active信号保持输出有效;在Enable=ON期间,插补器一直处于暂停状态,此时触发新的插补指令新的插补指令处于缓冲状态;在Enable的下降沿,插补器重新开始执行之前被暂停的插补指令;

03、操作步骤

PC的IP地址,192.168.1.132(与PLC同一网段即可);

SC2-C的IP地址,192.168.1.3;

操作步骤如图所示:

(1)新建工程

打开LeadStudio软件,新建工程“例_SC2C_AxisGroup”,如下图所示:

(2)轴组设置1)脉冲轴创建及参数配置请参考“本地脉冲轴_例程”,此处不再赘述;2)右键单击左侧设备树的【运动控制轴组配置】,选择【添加轴组】,新建轴组【MC_Group0】,双击打开轴组【MC_Group0】,设置轴组轴构成,及相关参数,如下图所示:

注意:

最大速度:直线插补模式表示空间直线的插补最大速度;圆弧插补表示圆弧的最大线速度;

最大加速度:直线插补模式表示空间直线的插补最大加速度;圆弧插补表示圆弧的最大线加速度;

停止方式:指在轴组发生故障时的停止方式。

(3)轴组(插补)程序编写

1)变量定义如下图所示;

2)编写程序如下图所示:

(4)轴组(插补)功能测试

1)打开LeadStudio软件,打开工程“例_SC2C_AxisGroup”,编译无误后,将工程下载到SC2-C中,点击运行,如下图所示:

2)双击左侧设备树的“Trace0”,选择“跟踪配置”,添加变量如下图所示,右键空白处,选择“下载跟踪”;

3)双击打开轴组演示程序【AxisGroup_Demo】,将“iState”值置为1,开始执行“轴组演示程序”,触发一段直线插补运动,缓冲一段圆弧插补运动,如下图所示:

4)等待程序执行完成,监控显示“iState”值为5,表明直线插补与圆弧插补运动完成,如下图所示:

5)双击左侧设备树的“Trace0”,可以看到轴组中两轴在直线插补与圆弧插补过程中的位置、速度变化曲线,如下图所示:

标签: 科技行业资讯

上一篇:无线影音电视盒智能时代的魔力之源

下一篇:未来智能汽车激情四射的电动梦想驾驭者

相关推荐
推荐资讯
热门文章