此功能块以用于 CAM 表中指定的电子 CAM 的轨迹激活主站-从站接合。
此库通过 CommonMotionTypes 库支持以下 CAM 类型(运动定律)(有关详细信息,请参阅 CommonMotionTypes 库指南中的 ST_MultiCam 和 ET_CamType):
o直线
o简单正弦
o五次一般多项式
o五次标准多项式
ST_MultiCam 是 PacDrive3 使用的相同数据结构,因此可以用相同 CAM 编辑器来创建。
功能块提供斜坡逼近机制。斜坡逼近机制通过将输入 SlaveStartMode 设置为 RampIn 来激活并通过输入 VelocityOffsetRampIn、AccelerationOffsetRampIn、DecelerationOffsetRampIn 和 JerkOffsetRampIn 来配置。模数轴的斜坡逼近方向可以通过输入 RampInDirection 来设置。
库名称:PLCopen MC part 1
命名空间:PLCO
|
输入 |
数据类型 |
描述 |
|---|---|---|
|
Master |
Axis_Ref |
对将执行功能块的轴的引用。 |
|
Slave |
Axis_Ref |
对将执行功能块的轴的引用。 |
|
Execute |
BOOL |
值范围:FALSE,TRUE。 缺省值: FALSE。 输入 Execute 的上升沿可启动功能块。功能块持续执行,且输出 Busy 设置为 TRUE。 此功能块可在执行期间重启。目标值将被上升沿出现时该点的新值所覆盖。 |
|
CamTableID |
MC_CAM_ID |
要使用的 CAM 表的标识符。 数据类型 MC_CAM_ID 是 CommonMotionTypes 库的 ST_MultiCam 的别名。有关详细信息,请参阅 CommonMotionTypes 库指南。 |
|
BufferMode |
缺省值:Aborting 缓冲模式。 可能的值: o值 Aborting o值 Buffered 有关值描述,请参阅 MC_Buffer_Mode。 |
|
|
Periodic |
BOOL |
值范围:FALSE,TRUE。 缺省值: FALSE。 TRUE 启动 MC_CamIn 的周期模式。此模式连续重复执行 CAM。 FALSE 在单次模式中启动 CAM。如果最近边缘(第一个或最后一个 CAM 点)的从站轴位置在定义的范围之外,则冻结此从站轴位置,即,如果 CAM 在定义的范围之外,则从站轴静止(但仍处于 SynchronizedMotion 状态)。 注意: 无论是在周期模式还是在单次模式中启动 CAM,它都会指示 EndOfProfile,并且在达到 EndOfProfile 时(即便 CAM 被定义为周期模式),缓存的运动作业(如果存在这样的作业)激活。 |
|
MasterStartMode |
缺省值:Absolute 可能的值: o值 Absolute o值 Relative 有关值描述,请参阅 MC_Master_Start_Mode。 |
|
|
SlaveStartMode |
缺省值:Relative 可能的值: o值 Relative o值 RampIn 有关值描述,请参阅 MC_Slave Start_Mode。 |
|
|
RampInDirection |
在从站轴为模数轴的情况下,接合的斜坡逼近方向。此方向是斜坡逼近机制自从站轴的位置(而不是 CAM 轨迹的 Y 周期)到绝对目标的方向(其中 MC_CamIn 被视为 InSync)。 如果从站轴不是模数轴,则此输入的值没有任何效用。 缺省值:PositiveDirection 可能的值: o值 PositiveDirection: o值 NegativeDirection o值 ShortestWay 有关值描述,请参阅 MC_Direction。 |
|
|
VelocityOffsetRampIn |
LREAL |
值范围:-2147483648...2147483647 缺省值:0 以用户自定义单位表示的斜坡逼近机制的速度偏移。 |
|
AccelerationOffsetRampIn |
LREAL |
值范围:任意正 LREAL 值 缺省值:0 以用户自定义单位表示的斜坡逼近机制的加速度偏移。 |
|
DecelerationOffsetRampIn |
LREAL |
值范围:任意正 LREAL 值 缺省值:0 以用户自定义单位表示的斜坡逼近机制的减速度偏移。 |
|
JerkOffsetRampIn |
LREAL |
值范围:任意正 LREAL 值和零 o正值:变化率限值(单位/s3)(加速度修改的最大变化率)。 o零:变化率限值已禁用。加速度瞬间从零跳至最大加速度(无限变化率)。 缺省值:0 |
|
输出 |
数据类型 |
描述 |
|---|---|---|
|
InSync |
BOOL |
值范围:FALSE,TRUE。 缺省值: FALSE。 oTRUE:如果轴已接合且 CAM 已被处理。 |
|
Busy |
BOOL |
值范围:FALSE,TRUE。 缺省值: FALSE。 oFALSE:功能块不处于正被执行状态。 oTRUE:功能块正在执行中。 |
|
Active |
BOOL |
值范围:FALSE,TRUE。 缺省值: FALSE。 oFALSE:功能块不控制轴的运动。 oTRUE:功能块控制轴的运动。 |
|
CommandAborted |
BOOL |
值范围:FALSE,TRUE。 缺省值: FALSE。 oFALSE:执行尚未中止。 oTRUE:执行已被另一个功能块所中止。 |
|
Error |
BOOL |
值范围:FALSE,TRUE。 缺省值: FALSE。 oFALSE:功能块正在执行,且执行期间未检测到错误。 oTRUE:已在执行功能块时检出错误。 |
|
ErrorID |
ET_Result |
此枚举提供诊断信息。 |
|
EndOfProfile |
BOOL |
值范围:FALSE,TRUE。 缺省值: FALSE。 TRUE:在已完成 CAM 的最后一段之后。 |
|
RampInDuration |
TIME |
指示在斜坡逼近操作完成并且将输出 InSync 设置为 TRUE 之前的剩余时间。 |
与 PLCopen Motion Control Part 1, Version 2.0 规范不同,此库不提供单独的功能块 MC_CamTableSelect。CAM 表被指定作为输入(不需要 MC_CamIn)。
此库不提供单独的功能块 MC_CamOut。可以使用另一功能块来替换正在运行的功能块。
此功能块为绝对运动和相对运动都提供了较高的灵活性。比如,主站(或从站)轴的模数与 CAM 在 X(或 Y)方向上的应用周期之间不一定要有关系。因此,可以通过稍微调整 CAM 轨迹在 X 或 Y 方向上的应用周期,来动态地应用偏移校正。轴模数无法执行此操作,在轴执行功能块时,无法修改轴模数。
|
ErrorId |
原因 |
纠正 |
|---|---|---|
|
AxisInErrorStop |
由于检测到轴错误且轴处于运行状态 ErrorStop,因此无法执行功能块。 |
打算启动新功能块时,请确认轴未处于运行状态 ErrorStop。 |
|
AxisInvalid |
未为输入 Axis 指定轴,或者指定的轴不支持所需的功能。 对于 MC_Touchprobe 和 MC_AbortTrigger:指定的轴不支持捕捉。 |
将要执行功能块的轴连接到输入 Axis。 对于 MC_Touchprobe 和 MC_AbortTrigger:使用支持捕捉的轴。 |
|
AxisIsDisabled |
由于轴处于运行状态 Disabled,因此无法执行功能块。 |
打算启动新功能块时,请确认轴未处于运行状态 Disabled。 |
|
AxisIsStopping |
由于 MC_Stop 功能块已激活且轴处于运行状态 Stopping,因此无法执行功能块。 |
打算启动新功能块时,请确认轴未处于运行状态 Stopping。 |
|
IfMotionCommandNotSupported |
连接的轴不支持所有需要的功能。 |
确认连接的轴实现了 MotionInterface 库的 IF_MotionCommand 接口。 |
|
InvalidC |
电子 CAM 的其中一个点具有无效 C 值。 |
C 是电子 CAM 的下一个曲线段。C 的允许值:0 < C ≤ 1。 |
|
InvalidCamTableID |
电子 CAM 的定义无效。 |
确认通过输入 CamTableID 为 MC_CamIn 提供了正确的 CAM 表。 |
|
InvalidK |
电子 CAM 的其中一个点具有无效 K 值。 |
K 是电子 CAM 的在定义 K 的位置处的曲率。对于简单正弦 (ET_CamType = SimplSin) 和五次一般多项式 (ET_CamType = Poly5Com),这个值必须为 0。 |
|
InvalidLambda |
电子 CAM 的其中一个点具有无效 Lambda 值。 |
Lambda 是位于拐点前的下一个 CAM 段的值。Lambda 的允许值:0 < Lambda < 1。 |
|
InvalidM |
电子 CAM 的其中一个点具有无效 M 值。 |
M 是电子 CAM 的在定义 M 的位置处的斜率。 |
|
MasterAxisNotHomed |
主站轴尚未执行基准点定位。 |
如要使用 mcAbsolute 为 MC_Master_Start_Mode 运行 MC_CamIn,需要执行了基准点定位的主站轴。 |
|
MasterInvalid |
输入 Master 处的对象无效。 |
提供对将执行功能块的轴的有效引用(来自“设备树”的对象,如轴或编码器)。 |
|
NoBusCommunication |
现场总线未处于 Operational 状态(Sercos:阶段 4)。 |
确认在输入 Execute 的上升沿以及在执行期间,现场总线处于 Operational(Sercos:阶段 4)。 |
|
OutOfMemory |
内存不足,无法执行运动命令。 |
减小应用程序对内存的需求。 |
|
UnexpectedReturnValue |
系统的返回值无法确定。 |
请联系 Schneider Electric 服务代表。 |