- {{item.name}}
凸轮同步
- 0
- 700
S7-1200 G2 提供了使用凸轮实现主从轴非线性同步功能,其优点为优化后的凸轮不会造成机械冲击。在实现机械高速运动的同时,有效地减少了机械振动及磨损,并且在设备运行中可以随时改变凸轮曲线以减少停机时间。
通过凸轮 (Cam) 同步功能完成引导轴与跟随轴间的非线性传递函数功能,主从之间的位置关系如图1所示。

图1 凸轮同步主从值的关系
使用同步命令使引导轴与跟随轴同步运行。同步分为 4 个阶段:
- 等待同步(跟随轴等待开始建立同步运动的条件满足)
- 建立同步(跟随轴根据指定的方式与引导轴建立同步关系)
- 同步运行(跟随轴与引导轴同步运动)
- 结束同步(通过其它指令替代同步运动)
应注意:
- 在已经开始建立同步和同步运行阶段,跟随轴组态的动态限制无效,驱动器的最大速度作为跟随轴的动态限制;
- 如果此时引导轴进行回零操作或者进行快速的位置或者速度调整,跟随轴可能会达到驱动器的最大速度。
凸轮同步功能
在进行凸轮同步控制前,应保证已正确组态了引导轴及同步轴工艺对象,引导轴可以是定位轴、同步轴或外部编码器,并且需要在同步轴组态时为其指定可能的引导轴(主值)。
S7-1200 G2 在使用凸轮曲线之前应使用“MC_InterpolateCam”命令进行插补,插补完成后,定义的凸轮插补点之间的空隙即可闭合。随后通过“MC_CamIn”命令启动跟随轴和引导轴之间的凸轮同步运动,“MC_CamIn”命令如图2所示。

图2 MC_CamIn 命令
“MC_CamIn”命令输入/输出参数说明,请查看《S7-1500/S7-1500T 同步操作功能手册》相关章节。
1. 常用参数介绍:
(1)“SyncProfileReference”参数
通过参数“SyncProfileReference”定义同步类型,实现引导轴与跟随轴之间建立同步关系。
表1 参数“SyncProfileReference”定义同步类型
| SyncProfileReference | 同步曲线 |
| 0 | 使用动态参数实现提前同步 |
| 1 | 使用主值距离实现提前同步 |
| 2 | 直接同步设置 |
| 3 | 使用主值距离实现随后同步 |
| 4 | 使用主值距离从当前主值位置开始进行随后同步 |
| 5 | 在凸轮结束运动时进行直接同步设置 |
| 6 | 使用主值距离从当前主值位置开始提前进行同步 |
视同步曲线而定,同步类型与运动控制指令“MC_CamIn 的不同参数之间具有相关性:
表2 与参数“SyncProfileReference”的相关参数
| 参数 | SyncProfileReference | ||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | |
| MasterOffset | ✓ | ✓ | - | ✓ | ✓ | - | - |
| SlaveOffset | ✓ | ✓ | - | ✓ | ✓ | - | ✓ |
| MasterScaling | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| SlaveScaling | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| MasterSyncPosition | ✓ | ✓ | ✓ | ✓ | - | ✓ | ✓ |
| MasterStartDistance | - | ✓ | - | ✓ | ✓ | - | ✓ |
| Velocity | ✓ | - | - | - | - | - | - |
| Acceleration | ✓ | - | - | - | - | - | - |
| Deceleration | ✓ | - | - | - | - | - | - |
| Jerk | ✓ | - | - | - | - | - | - |
| ApplicationMode | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| SyncDirection | ✓ | ✓ | - | ✓ | ✓ | - | ✓ |
(2)“MasterSyncPosition”“MasterOffset”和“SlaveOffset”参数
提前同步模式下的跟随轴开始追赶引导轴和随后同步模式下的跟随轴与引导轴同步运行时,引导轴的位置由凸轮曲线的起始位置、“MasterSyncPosition”和“MasterOffset”参数共同作用产生,而不是仅由“MasterSyncPosition”一个参数决定。
“MasterSyncPosition”参数,可在凸轮曲线内指定同步位置。“MasterOffset”和“SlaveOffset”参数可设置凸轮引导轴和跟随轴的偏移量,确定凸轮曲线相对于引导轴和跟随轴的位置,用于移动凸轮曲线到应用所需的位置。图3显示了“MasterSyncPosition”、引导值和跟随值偏移对凸轮曲线的影响。

图3 “MasterSyncPosition”、引导值和跟随值偏移对凸轮曲线的基本影响
① “StartLeadingValue”:凸轮曲线的起始位置,即凸轮曲线定义的第一个点-起始点。
② 提前同步模式的主值距离“MasterStartDistance”:跟随轴建立同步时引导轴的移动距离。
③ “MasterSyncPosition”:相对于凸轮起始位置的引导轴的同步位置。
④ 随后同步模式的主值距离“MasterStartDistance”:跟随轴建立同步时引导轴的移动距离。
⑤ “EndLeadingValue”:凸轮的结束位置,即凸轮曲线定义的最后一个点/线段结束点。
以提前同步模式为例说明:
如果引导轴偏移设为 50.0 (“MasterOffset=50.0”),凸轮曲线第一个点从 30.0 开始绘 (“StartLeadingValue”=30.0),设置“MasterSyncPosition”参数 =70.0。则跟随轴开始按凸轮曲线运动时,引导轴的位置为 150.0 (50.0+30.0+70.0),此时跟随轴从凸轮曲线横坐标位置 100.0 (30.0+70.0) 处开始凸轮曲线同步移动。
(3)“MasterScaling”和“SlaveScaling”参数
通过“MasterScaling”和“SlaveScaling”参数可以对电子凸轮引导值及跟随值进行比例缩放,示例如图4所示。

图4 凸轮引导值及跟随值比例缩放图例
(4) “ApplicationMode”参数
关于“ApplicationMode”的参数说明,如图5所示。

图5 “ApplicationMode” 参数的说明
2. 使用主值距离实现提前同步(模式 1)
在使用主值距离提前同步期间,通过引导轴和跟随轴在到达同步位置时同步的方式开始同步。如图6所示。

图6 使用主值距离提前同步
对于提前同步,引导轴的同步位置是引导轴和跟随轴完成同步并开始同步运行的位置。
可指定引导轴的同步位置(MasterSyncPosition),并使用 MC_CamIn 设置的同步长度(主值距离MasterStartDistance)。
则:起始位置 = 引导轴的同步位置(完成)– 同步长度
其中:引导轴的同步位置 = 凸轮的起始位置 × “MasterScaling” + “MasterOffset” + “MasterSyncPosition”
注:使用动态参数实现提前同步(模式 0)与使用主值距离实现提前同步(模式 1)的区别在于——模式 0 中的同步长度(MasterStartDistance)参数无效,即起始位置是由系统根据跟随轴的动态参数计算出来的。
3. 使用主值距离实现随后同步(模式 3)
使用主值距离随后同步时,主值到达引导轴同步位置后立即开始同步。如图7所示。

图7 使用主值距离实现随后同步
对于随后同步,引导轴的同步位置是同步的起始位置。可指定引导轴的同步位置(MasterSyncPosition)。并使用 MC_CamIn 设置的同步长度(主值距离MasterStartDistance)。
则:轴同步位置(完成) = 引导轴的同步位置(起始)+ 同步长度
其中:引导轴的同步位置 = 凸轮的起始位置 × “MasterScaling” + “MasterOffset” + “MasterSyncPosition”
注:使用主值距离从当前主值位置开始实现随后同步(模式 4)与使用主值距离实现提前同步(模式 3)的区别在于——模式 4 中的引导轴的同步位置(MasterSyncPosition)参数无效,即引导轴的当前位置就是同步位置(起始)。
则:轴同步位置(完成) = 作业开始时的引导轴的位置(起始)+ 同步长度
关于“MC_CamIn”命令的更多同步模式的详细信息
请查看《S7-1500/S7-1500T 同步操作功能手册》相关章节。
关于凸轮同步模式的1847视频链接:
凸轮同步模式介绍-S7-1500T同步功能初探-系列课程-西门子1847工业学习平台官网
4. 解除凸轮同步
S7-1200 G2 使用运动控制命令“MC_CamOut”结束引导轴与跟随轴之间的凸轮同步,命令如图8所示。

图8 “MC_CamOut”
解除同步有三种方式:
(1) 使用动态参数解除同步 (“SyncProfileReference”=0)
使用动态参数解除同步时,系统根据输入的各个动态参数 (减速度、加加速度) 及指定跟随轴的停止位置(“SlavePosition”)自动计算跟随轴的行进距离以及跟随轴的起始位置。在跟随轴的起始位置开始解除同步,到达跟随轴的停止位置,跟随轴进入停止状态且完成解除同步。
(2)使用引导轴距离解除同步 (“SyncProfileReference”=1)
使用引导轴距离解除同步时,根据指定的引导轴距离(“MasterStopDistance”)、跟随轴的停止位置,计算跟随轴的运动曲线及解除同步的起始位置。在跟随轴的起始位置开始解除同步,到达跟随轴的停止位置,跟随轴进入停止状态且解除同步。
(3)解除待处理的齿轮/凸轮同步 (“SyncProfileReference”=5)
待处理是指当激活同步命令时,跟随轴的同步关系还没有开始建立 ( 同步指令 MC_CamIn 状态为“Busy”=TRUE、“StartSync”=FALSE、“InSync”=FALSE)。解除待处理的同步对正在进行的同步无效。
除了解除同步命令外,还可以通过对跟随轴调用其它运动命令,使用超驰的方法实现解除同步,比如可以对跟随轴调用“MC_Halt”、“MC_Stop”、“ MC_MoveAbsolute”等单轴的指令来终止同步关系。
注意:
如果同步处于待处理状态(即同步指令 MC_CamIn 状态“Busy”=TRUE、“StartSync”=FALSE、“InSync”=FALSE) 时,需要用使用“MC_Stop”来超驰同步指令。
- 评论
-
分享
扫码分享
- 收藏 收藏
- 点赞 点赞
- 纠错 纠错



西门子官方商城


{{item.nickName}}