分享

S7-1200伺服指令运动指令

 新用户25123383 2023-07-14 发布于江苏

1.MC_Halt

指令名称:停止轴运行指令

功能:停止所有运动并以组态的减速度停止轴。

使用技巧:常用MC_Halt指令来停止通过MC_MoveVelocity指令触发的轴的运行。

『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。

S7-1200伺服指令运动指令

2.MC_Home

指令名称:回原点指令

功能:使轴归位,设置参考点,用来将轴坐标与实际的物理驱动器位置进行匹配。

使用要点:轴做绝对位置定位前一定要触发MC_Home指令。

『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。

S7-1200伺服指令运动指令

①Position: 位置值

∙Mode = 1时:对当前轴位置的修正值

∙Mode = 0,2,3时:轴的绝对位置值

②Mode: 回原点模式值

∙Mode = 0:绝对式直接回零点,轴的位置值为参数“Position”的值

∙Mode = 1:相对式直接回零点,轴的位置值等于当前轴位置 + 参数“Position”的值

∙Mode = 2:被动回零点,轴的位置值为参数“Position”的值

∙Mode = 3:主动回零点,轴的位置值为参数“Position”的值

下面详细介绍模式0和模式1.

Mode = 0绝对式直接回原点

以下图为例进行说明。该模式下的MC_Home指令触发后轴并不运行,也不会去寻找原点开关。指令执行后的结果是:轴的坐标值更直接新成新的坐标,新的坐标值就是MC_Home指令的“Position”管脚的数值。例子中,“Position”=0.0mm,则轴的当前坐标值也就更新成了0.0mm。该坐标值属于“绝对”坐标值,也就是相当于轴已经建立了绝对坐标系,可以进行绝对运动。

『优点』MC_Home的该模式可以让用户在没有原点开关的情况下,进行绝对运动操作。

S7-1200伺服指令运动指令

Mode = 1相对式直接回原点

与Mode = 0相同,以该模式触发MC_Home指令后轴并不运行,只是更新轴的当前位置值。更新的方式与Mode = 0不同,而是在轴原来坐标值的基础上加上“Position”数值后得到的坐标值作为轴当前位置的新值。如下图所示,指令MC_Home指令后,轴的位置值变成了210mm.,相应的a和c点的坐标位置值也相应更新成新值。

S7-1200伺服指令运动指令

Mode = 2和Mode = 3已在前面介绍过,这里不再赘述。

『注意』用户可以通过对变量 <轴名称>.StatusBits.HomingDone = TRUE与运动控制指令“MC_Home”的输出参数 Done = TRUE进行与运算,来检查轴是否已回原点。

3.MC_MoveAbsolute

指令名称:绝对位置指令

功能:使轴以某一速度进行绝对位置定位。

使用技巧:在使能绝对位置指令之前,轴必须回原点。因此MC_MoveAbsolute指令之前必须有MC_Home指令。

『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。

S7-1200伺服指令运动指令

指令输入端:

①Position:绝对目标位置值。

②Velocity:绝对运动的速度。

4.MC_MoveJog

指令名称:点动指令

功能:在点动模式下以指定的速度连续移动轴。

使用技巧:正向点动和反向点动不能同时触发。

『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。

S7-1200伺服指令运动指令

①JogForward:正向点动,不是用上升沿触发,JogForward为1时,轴运行;JogForward为0时,轴停止。类似于按钮功能,按下按钮,轴就运行,松开按钮,轴停止运行。

②JogBackward:反向电动,使用方法参考JogForward。

『注意』在执行点动指令时,保证JogForward和JogBackward不会同时触发,可以用逻辑进行互锁。

③Velocity:点动速度。

『注意』Velocity数值可以实时修改,实时生效。

5.MC_MoveRelative

指令名称:相对距离指令

功能:使轴以某一速度在轴当前位置的基础上移动一个相对距离。

使用技巧:不需要轴执行回原点命令。

『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。

S7-1200伺服指令运动指令

指令输入端:

①Distance:相对对轴当前位置移动的距离,该值通过正/负数值来表示距离和方向。

②Velocity:相对运动的速度。

6.MC_MoveVelocity

指令名称:速度运行指令

功能:使轴以预设的速度运行

『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。

S7-1200伺服指令运动指令

指令输入端:

①Velocity:轴的速度。

②Direction:方向数值

∙Direction = 0:旋转方向取决于参数“Velocity”值的符号

∙Direction = 1:正方向旋转,忽略参数“Velocity”值的符号

∙Direction = 2:负方向旋转,忽略参数“Velocity”值的符号

③Current:

∙Current = 0:轴按照参数“Velocity”和“Direction”值运行

∙Current = 1:轴忽略参数“Velocity”和“Direction”值,轴以当前速度运行。

『注意』可以设定“Velocity”数值为0.0,触发指令后轴会以组态的减速度停止运行。相当于MC_Halt指令。

7.MC_Power

指令名称:启动/禁用轴。

功能:使能轴或禁用轴。

使用要点:在程序里一直调用,并且在其他运动控制指令之前调用并使能。

S7-1200伺服指令运动指令

输入端:

①EN:该输入端是MC_Power指令的使能端,不是轴的使能端。

MC_Power 指令必须在程序里一直调用,并保证MC_Power指令在其他Motion Control指令的前面调用。

②Axis:轴名称

可以有几种方式输入轴名称:

a. 用鼠标直接从Portal软件左侧项目树中拖拽轴的工艺对象,如下图所示:

S7-1200伺服指令运动指令

b. 用键盘输入字符,则Portal软件会自动显示出可以添加的轴对象,如下图所示:

S7-1200伺服指令运动指令

c. 用拷贝的方式把轴的名称拷贝到指令上,如下图所示:

S7-1200伺服指令运动指令

d. 还可以用鼠标双击“Aixs”,系统会出现右边带可选按钮的白色长条框,这时用鼠标点击“选择按钮”,就会出现下图中的列表。

S7-1200伺服指令运动指令

③Enable:轴使能端

∙Enable = 0: 根据StopMode设置的模式来停止当前轴的运行;

∙Enable = 1:如果组态了轴的驱动信号,则Enable=1时将接通驱动器的电源。

④StopMode:轴停止模式

S7-1200伺服指令运动指令

∙StopMode=2:带有加速度变化率控制的紧急停止:如果用户组态了加速度变化率,则轴在减速时会把加速度变化率考虑在内,减速曲线变得平滑,如下图所示。

S7-1200伺服指令运动指令

输出端
⑤ENO:使能输出
⑥Status:轴的使能状态
⑦Busy:标记MC_Power指令是否处于活动状态
⑧Error:标记MC_Power指令是否产生错误
⑨ErrorID:当MC_Power指令产生错误时,用ErrorID表示错误号。
⑩ErrorInfo:当MC_Power指令产生错误时,用ErrorInfo表示错误信息 。

结合ErrorID和ErrorInfo数值,查看手册或是Portal 软件的帮助信息中的说明,来得到错误原因。

8.MC_ReadParam

指令名称:读参数指令

功能:可在用户程序中读取轴工艺对象和命令表对象中的变量。

『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。

S7-1200伺服指令运动指令

指令输入端:
①Enable:可以一直使能读取指令 。
该例子读取的是轴的实际位置值,读到的数值放在“Value”中。

下面列出了常用的轴工艺对象中部分参数:

1. 轴的位置和速度变量

∙<轴名称>.Position:轴的位置设定值

∙<轴名称>.ActualPosition:轴的实际位置

∙<轴名称>.Velocity:轴的速度设定值

∙<轴名称>.ActualVelocity:轴的实际速度

2. 回原点变量

∙<轴名称>.Homing.AutoReversal:主动归位期间激活硬限位开关处的自动反向

∙<轴名称>.Homing.ApproachDirection:主动归位期间的逼近方向和归位方向

∙<轴名称>.Homing.ApproachVelocity:主动归位期间轴的逼近速度

∙<轴名称>
.Homing.ReferencingVelocity:主动归位期间轴的归位速度

3. 单位变量

∙<轴名称>.Units.LengthUnit:参数的已组态测量单位

4.机械变量

∙<轴名称>.Mechanics.LeadScrew:每转的距离

5.轴StatusPositioning变量

∙<轴名称>
.StatusPositioning.Distance:轴距目标位置的当前距离

∙<轴名称>
.StatusPositioning.TargetPosition:轴的目标位置

6.轴的DynamicDefaults变量

∙<轴名称>
.DynamicDefaults.Acceleration:轴的加速度

∙<轴名称>
.DynamicDefaults.Deceleration:轴的减速度

∙<轴名称>
.DynamicDefaults.EmergencyDeceleration:轴的急停减速度

∙<轴名称>.DynamicDefaults.Jerk:轴加速斜坡和减速斜坡期间的冲击

7.PositionLimitesSW变量

∙<轴名称>.PositionLimitsSW.Active:软限位开关激活

∙<轴名称>
.PositionLimitsSW.MinPosition:软限位开关下限位

∙<轴名称>
.PositionLimitsSW.MaxPosition:软限位开关上限位

8.PositionLimitesHW变量

∙<轴名称>.PositionLimitsHW.Active:硬限位开关激活

∙<轴名称>.
PositionLimitsHW.MinSwitchLevel:选择到达下限硬限位开关时 CPU 输入端存在的信号电平

∙<轴名称>.
PositionLimitsHW.MinSwitchAddress:下限硬限位开关的符号输入地址(内部参数)

∙<轴名称>
.PositionLimitsHW.MaxSwitchLevel:选择到达上限硬限位开关时 CPU 输入端存在的信号电平

∙<轴名称>
.PositionLimitsHW.MaxSwitchAddress:上限硬限位开关的输入地址(内部参数)

9.MC_Reset

指令名称:确认故障

功能:用来确认“伴随轴停止出现的运行错误”和“组态错误”。

使用要点:Execute用上升沿触发。

『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。

S7-1200伺服指令运动指令

输入端
①EN:该输入端是MC_Reset指令的使能端。
②Axis:轴名称。
③Execute:MC_Reset指令的启动位,用上升沿触发。
④Restart

∙Restart = 0:用来确认错误。

∙Restart = 1:将轴的组态从装载存储器下载到工作存储器(只有在禁用轴的时候才能执行该命令)。

输出端:除了Done指令,其他输出管脚同MC_Power指令,这里不再赘述。
⑥Done:表示轴的错误已确认。

10.MC_WriteParam

指令名称:写参数指令

功能:可在用户程序中写入或是更改轴工艺对象和命令表对象中的变量。

『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。

S7-1200伺服指令运动指令

①参数类型:与“Parameter”数据类型一致
②Parameter:输入需要修改的轴的工艺对象的参数,数据类型为VARIANT指针。
③Value:根据“Parameter”数据类型,输入新参数值所在的变量地址。

上图以回原点方向为例,“Parameter”管脚输入:<轴名称>.Homing.ApproachDirection,由于该轴的名称为“轴_1”,所以例子中的地址就是:“轴_1“.Homing.ApproachDirection。该变量是Bool类型的变量,因此在“Value”管脚中输入一个Bool类型的变量地址,同时指令的参数类型也是Bool。

S7-1200伺服指令运动指令

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多