[5阶凸轮曲线创建] [难易级别-简单]
[邱志远][2022年7月28日星期四]
1. 功能块功能描述
根据设定的参数计算对应的5阶凸轮曲线,生成数据模块并将凸轮曲线下载到伺服当中。
2. 功能块软件配置信息
AS版本 |
AS4.2.8 |
操作系统版本 |
|
伺服操作系统版本 |
|
需要库 |
Acp10_MC |
||||
编写人 |
邱志远 |
测试人 |
邱志远 |
审核人 |
|
项目名称 |
CamCreate |
||||
任务说明 |
创建凸轮曲线 |
3. 版本信息
软件版本 |
修改内容 |
修改人 |
V1.0 |
初版 |
邱志远 |
4. 曲线创建
曲线创建程序输入输出接口:
I/O |
名称 |
类型 |
描述 |
In |
gCamCreate.Parameter.vInput |
REAL |
曲线的入口速度 |
In |
gCamCreate.Parameter.aInput |
REAL |
曲线的入口加速度 |
In |
gCamCreate.Parameter.vOutput |
REAL |
曲线的出口速度 |
In |
gCamCreate.Parameter.aOutput |
REAL |
曲线的出口加速度 |
In |
gCamCreate.Parameter.masterPeriod |
REAL |
曲线的主轴距离 |
In |
gCamCreate.Parameter.slavePeriod |
REAL |
曲线的从轴距离 |
In |
gCamCreate.Parameter.dataModName |
REAL |
曲线的数据模块名字(非空) |
In |
gCamCreate.Parameter.camIndex |
REAL |
曲线的编号(1-16) |
In |
gCamCreate.Command.start |
REAL |
开始曲线创建流程 |
Out |
gCamCreate.Status.slaveDistance |
UDINT |
以主轴距离为基准时的最佳从轴距离 |
Out |
gCamCreate.Status.masterDistance |
UDINT |
以从轴距离为基准时的最佳主轴距离 |
Out |
gCamCreate.Status.status |
UDINT |
创建流程状态 NO_ERROR ERROR_IN_CREATE_DATA_MOD ERROR_IN_DOWNLOAD PARA_INVALID |
5. 任务介绍
本功能块包含两个部分,PolyCalc为根据输入参数计算出对应的5阶曲线系数,CamCreate为曲线创建的整个流程任务,CamCreateNcaction和CamCreatePLCOPEN分别为两套轴控程序下的例程。使用时需要删掉另外一个程序或者屏蔽掉。考虑到ncaction
和PLCOPEN轴控程序的控制流程,CamCreateNcaction包含曲线计算->创建曲线数据模块,曲线下载到伺服功能需要使用者在轴控程序中自行添加,CamCreatePLCOPEN包含了曲线计算->创建曲线数据模块->曲线下载到伺服 整个流程。
在测试CamCreatePLCOPEN任务时需要修改一段代码,指明需要将曲线传输的目标轴。
MC_BR_DownloadCamProfileObj_0.Axis = &gAxis01;
6. 使用说明
一般来说大部分需要用到凸轮曲线的情况,都可以用AS自带的Cam曲线设计功能来完成。在少数应用场合中,需要频繁的对主从轴距离,入口速度,入口加速度,出口速度,出口加速度进行调整时,可以使用本功能块实时创建Cam曲线,下图中1为主轴距离,2为从轴距离,3为入口速度,出口速度,4为入口加速度,出口加速度。使用本功能块输入参数时可以跟用AS自带工具设计Cam曲线时采用一样的输入思路。
此外,在使用automat时,由于补偿段中进行路径规划时,加速度均为三角尖峰形状,某些高负载场合会对机械,电机部分会产生较大冲击。这时可以使用本功能块将补偿段转变为固定的cam曲线,然后在同步段中运行,可以解决加速度变化过大的弊端。
注意:需要先下载cam dataobject,再下载camautoamt参数表,否则会报错。