分享

[收藏]一文让你读懂S7-1200定位控制(二)

 金玉满堂jjnla8 2020-02-28
MC_MoveAbsolute绝对位置指令
      主要是使轴以某一速度进行绝对位置定位。
   在使能绝对位置指令之前,轴必须回原点。因此MC_MoveAbsolute指令之前必须有MC_Home指令。

     Execute:MC_MoveAbsolute 指令启动位,用上升沿触发;也可以用触点触发
     Position:绝对目标位置值;即相对于原点的位置  
    Velocity:绝对运动的速度;启动/停止速度<=Velocity<=最大速度
    Done :达到绝对目标位置时,该位为1 ,为1 时间的长短取决于Execute管脚,若该管脚为脉冲激活,则该位为1的时间就是一个扫描周期的时间,若Execute一直为1,则该位的时间也一直为1 

        Direction:轴的运行方向  数据类型为INT 各个数字表示的意义如下:

0

速度的符号(“Velocity”参数)用于确定运动的方向。

1

正方向

(从正方向逼近目标位置)

2

负方向

(从负方向逼近目标位置)

3

最短距离
(工艺将选择从当前位置开始,到目标位置的最短距离)

      CommandAborted:命令在执行过程中被另一命令中止

     Busy:标记MC_MoveAbsolute指令是否处于忙状态 
     Error:标记MC_MoveAbsolute指令是否产生错误,如有错误时,Error=1
    ErrorID:当MC_MoveAbsolute指令产生错误时,用ErrorID表示错误号(具体错误请查看指令帮助信息) 
   ErrorInfo:当MC_MoveAbsolute指令产生错误时,用 ErrorInfo表示错误信息 (具体错误请查看指令帮助信息) 
     ENO:使能输出

MC_MoveRelative相对距离指令

     使轴以某一速度在轴当前位置的基础上移动一个相对距离。不需要轴执行回原点命令

     Distance:相对对轴当前位置移动的距离,该值通过正/负数值来表示距离和方向。 
      Velocity:相对运动的速度,启动/停止速度<=Velocity<=最大速度
      Done :达到绝对目标位置时,该位为1 ,为1 时间的长短取决于Execute管脚,若该管脚为脉冲激活,则该位为1的时间就是一个扫描周期的时间,若Execute一直为1,则该位的时间也一直为1 
     其他管脚同MC_MoveAbsolute指令,这里不再赘述。 

MC_MoveVelocity速度运行指令

      使轴以预设的速度运行,运行方向可通过Velocity的管脚来决定;若需要停止时,可通过MC_Halt 停止轴运行指令停止,或把速度设置为0 ,再次激活该指令Execute的管脚且Current = 0时轴会以组态的减速度停止运行。
      该指令在运行中只有速度,没有位置,但可指定正反运行方向
    Execute:MC_MoveVelocity 指令启动位,用上升沿触发;也可以用触点触发

    Velocity:轴的速度启动/停止速度<=Velocity<=最大速度 数值的正负表示的运行的方向正负。如果速度设置为0时再次激活该指令Execute管脚轴会以组态的减速度停止运行;如同MC_Halt指令

     Direction:方向  可设置为0/1/2 三种
   Direction = 0:旋转方向取决于参数“Velocity”值的符号;如果速度为正值,那运行方向为正;如果速度为负值,则运行方向为负
     Direction = 1:正方向旋转,与参数“Velocity”值的正负没有关系
     Direction = 2:负方向旋转,与参数“Velocity”值的正负没有关系 

     Current:保持当前速度
 Current = 0:轴按照参数“Velocity”和“Direction”值运行
 Current = 1:轴忽略参数“Velocity”和“Direction”值,轴以当前速度运行;此时就算Velocity速度设为0并激活Execute管脚是无法停止轴的,只能使用停止轴指令停止。
     另外,当轴停止后Current = 1此时再激活Execute管脚是无法启动轴的,因为停止后速度是0 ,只有Current = 0时,激活Execute管脚才能运行轴
     当轴继续以当前速度运动时,参数 'InVelocity 返回值 TRUE

InVelocity:速度状态反馈
       速度达到Velocity指定的速度或保持当前的速度时,该位为1
如果保持当前速度'Current' = 0 时已达到参数速度“Velocity”中指定的速度时InVelocity位为1 
      如果保持当前速度'Current' = 1轴在启动时,以当前速度进行移动;InVelocity位也会为1
 

MC_MoveJog点动指令 

       在点动模式下以指定的速度连续移动轴。正向点动和反向点动不能同时触发


       JogForward:正向点动,不是用上升沿触发
       JogForward为1时,轴运行;
       JogForward为0时,轴停止。类似于按钮功能,按下按钮,轴就运行,松开按钮,轴停止运行。 
       JogBackward:反向点动,不是用上升沿触发
『注意』在执行点动指令时,保证JogForward和JogBackward不会同时触发,需要用逻辑进行互锁
Velocity:点动速度。启动/停止速度<=Velocity<=最大速度 
『注意』Velocity数值可以实时修改,实时生效。
     PositionControlled:为1 时表示位置控制
    CommandAborted:命令在执行过程中被另一命令中止


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

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多