为了更好地联系上下文,本文前三部分引用:《欧姆龙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伺服驱动器/伺服电机操作指引》 感谢阅读指正,关注了解更多! |
|