分享

欧姆龙NJ控制器(PLC)控制1S伺服电子凸轮同步运行(之二)——凸轮表参数修改与相位补偿

 PLC与自控设备 2022-06-07 发布于广东

往期精彩文章:

电气工程师项目设计流程:一个项目中,电气工程师要做的设计思路

西门子S7-1200/1500PLC的结构化程序编程模式/套路

S7-1200/1500PLC用FB284库指令控制伺服驱动器的程序

PLC定位控制基础:电子齿轮比对脉冲当量和电机转速的调整作用

步进电动机与交流伺服电动机的性能比较,来看看跟你知道的一样吗?

怎样用软件进行交流伺服驱动器的增益自动调整?

变频器的种类多种多样,根据负载特性怎么选择变频器呢?

怎么让两台伺服电机比例同步运行?伺服驱动器要做哪些设置?

西门子S7-1200PLC  基于AT覆盖变量的V90伺服速度控制程序

S7-1200PLC控制伺服驱动器V90PN-速度控制SIMOTICS电机

欧姆龙自动化设备通过CX-One软件配置单机PLC控制系统详解

欧姆龙自动控制设备通过CX-One软件配置PLC网络系统

PLC如何快速排除故障?这里有一个资深电气工程师所用模板

关于不用边沿脉冲指令的单按钮启停控制程序,用继电器控制也能做吗?

欧姆龙NJ控制器(PLC)控制欧姆龙总线型1S伺服驱动器/伺服电机操作指引

让你设计的程序能够适用于所有PLC品牌和绝大部分型号!

为了更好地联系上下文,本文前三部分引用:《欧姆龙NJ控制器(PLC)控制1S伺服电子凸轮同步运行》。

欧姆龙NJ控制器(PLC)控制1S伺服电子凸轮同步运行之二

在实际项目中,有贴标机、电池卷绕机、SCARA/DELTA机器人、薄膜飞剪机、材料追剪机、收放卷张力控制机等机器设备或多或少使用了电子凸轮位置同步运动控制技术。

如某口罩机的布料,由滚刀旋转360度把其剪切成一片一片的小方块,试用欧姆龙NJ控制器实现此功能。

设切刀下顶点为0/360度,则上顶点为180度,180度时布料长度为50mm,0/360度为切断点。需要每片布料长度为100mm。

也可设切刀上顶点为0/360度,这样开始切的时候可以少切一点边料。

一、轴组态

1、打开欧姆龙“Sysmac Studio”软件,点击“新建工程”。

2、在“工程属性”处,设置工程名称、作者、注释、类型等,设备类型选择“驱动器”,选择对应设备型号与版本。

3、组态EtherCAT伺服节点,添加两个1S伺服驱动器。

4、建立两个单轴,一个牵引轴为主轴,一个切刀轴为副轴。设置好参数,主轴的单位为毫米,从轴的单位为度。

5、用鼠标右击在多视图浏览器中的“Cam数据设置”,添加一个凸轮表“CamProfile0”,并且设置好参数。

凸轮表参数设置的速度曲线(3次、5次、自由等曲线)要左右对称、平滑为佳。

二、编写程序

1、轴使能、原点程序。

2、主轴点动、主轴停止与绝对运动程序。

上图可见,主轴移动到300mm时,从轴旋转到0度位置(从轴位置计数设置为0~360度循环模式)。

3、电子凸轮耦合与电子凸轮解耦合程序。

电子凸轮耦合时,要定义以下参数:

主轴master、从轴slave、凸轮表camtable、上升沿启动execute、重复模式periodic(初始值为FALSE/0不重复,此处改为TRUE/1)。

以下图表所示为输入变量的含义和取值。

如果在同一旋转刀下,要改变材料的裁切长度,可设置主轴系数Master Scaling,如裁切长度为50mm,则主轴系数设为0.5。

三、数据跟踪调试

添加一个数据跟踪,把主轴和从轴的当前位置做为跟踪变量,可见两个轴的位置曲线。

四、修改并保存凸轮表参数

修改裁切长度的另外一个方法是用指令修改凸轮表,并用指令保存凸轮表参数。

如要改为80mm的裁切长度,则系数变为0.8(系数不能大于1,否则报错)。

ST语言参数赋值如下:

系数:=裁切长度/100;//100基准长度。

cam凸轮属性.CycleTime:=1;//凸轮动作1周期时间为1s。

cam凸轮属性.InitVel:=0;//指定起始节点(相位= “0”、位移= “0”)的动作开始时的速度。

//凸轮表参数第一行//

cam凸轮节点[0].PHASE:=6.5*系数; //主轴相位。

cam凸轮节点[0].Distance:=20;//从轴位移。

cam凸轮节点[0].Curve:=_eMC_CAM_CURVE#_mcStraightLine;//曲线形状枚举14选1。

cam凸轮节点[0].ConnectingVelEnable:=0;//连接速度无效。

cam凸轮节点[0].ConnectingVel:=REAL#0;//连接速度为0.00

cam凸轮节点[0].ConnectingAccEnable:=0;//连接加速度无效。

cam凸轮节点[0].ConnectingAcc:=0;//连接加速度为0.00

cam凸轮节点[0].PhasePitch:=0.1;//相节距。

//凸轮表参数第二行//

cam凸轮节点[1].PHASE:=40*系数; //主轴相位。

cam凸轮节点[1].Distance:=140;//从轴位移。

cam凸轮节点[1].Curve:=_eMC_CAM_CURVE#_mcPolynomic5;//曲线形状枚举14选1。

cam凸轮节点[1].ConnectingVelEnable:=0;//连接速度无效。

cam凸轮节点[1].ConnectingVel:=REAL#0;//连接速度为0.00

cam凸轮节点[1].ConnectingAccEnable:=0;//连接加速度无效。

cam凸轮节点[1].ConnectingAcc:=0;//连接加速度为0.00

cam凸轮节点[1].PhasePitch:=0.1;//相节距。

//凸轮表参数第三行//

cam凸轮节点[2].PHASE:=60*系数; //主轴相位。

cam凸轮节点[2].Distance:=220;//从轴位移。

cam凸轮节点[2].Curve:=_eMC_CAM_CURVE#_mcStraightLine;//曲线形状枚举14选1。

cam凸轮节点[2].ConnectingVelEnable:=0;//连接速度无效。

cam凸轮节点[2].ConnectingVel:=REAL#0;//连接速度为0.00

cam凸轮节点[2].ConnectingAccEnable:=0;//连接加速度无效。

cam凸轮节点[2].ConnectingAcc:=0;//连接加速度为0.00

cam凸轮节点[2].PhasePitch:=0.1;//相节距。

//凸轮表参数第四行//

cam凸轮节点[3].PHASE:=93.5*系数; //主轴相位。

cam凸轮节点[3].Distance:=340;//从轴位移。

cam凸轮节点[3].Curve:=_eMC_CAM_CURVE#_mcPolynomic5;//曲线形状枚举14选1。

cam凸轮节点[3].ConnectingVelEnable:=0;//连接速度无效。

cam凸轮节点[3].ConnectingVel:=REAL#0;//连接速度为0.00

cam凸轮节点[3].ConnectingAccEnable:=0;//连接加速度无效。

cam凸轮节点[3].ConnectingAcc:=0;//连接加速度为0.00

cam凸轮节点[3].PhasePitch:=0.1;//相节距。

//凸轮表参数第五行//

cam凸轮节点[4].PHASE:=100*系数; //主轴相位。

cam凸轮节点[4].Distance:=360;//从轴位移。

cam凸轮节点[4].Curve:=_eMC_CAM_CURVE#_mcStraightLine;//曲线形状枚举14选1。

cam凸轮节点[4].ConnectingVelEnable:=0;//连接速度无效。

cam凸轮节点[4].ConnectingVel:=REAL#0;//连接速度为0.00

cam凸轮节点[4].ConnectingAccEnable:=0;//连接加速度无效。

cam凸轮节点[4].ConnectingAcc:=0;//连接加速度为0.00

cam凸轮节点[4].PhasePitch:=0.1;//相节距。

//用修改凸轮表指令修改参数,要把主轴系数改回1。

如下图所示,裁切3段后主轴移动的距离大概是240mm。

五、裁切长度校正(主轴相位补偿)

相位补偿是为了消除实际尺寸与程序尺寸之间的误差。

相位补偿量可以是正数、负数和0。

参阅:《欧姆龙NJ控制器(PLC)控制欧姆龙总线型1S伺服驱动器/伺服电机操作指引

感谢阅读指正,关注了解更多!

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多