前期准备
软件:Sysctrl Studio(PLC编程软件)
硬件:M系列控制器(以M511S为例)
伺服(以HN-Y7FB040A-S为例)
通讯连接
本次教程使用的是M控制器HCM511S-32MT4-D和伺服HN-Y7FB040A-S,连接方式如下图。
Sysctrl Studio 工程配置
基本设置
第一步:添加从站
双击打开Sysctrl Studio软件,新建工程。点开【网络设置】>>【EtherCAT】>>【添加从站】>> 选择要添加的伺服从站 >>【添加】
第二步:添加伺服轴
点开【运动控制】>> 【轴设置】>> 空白处右击【添加伺服轴】
第三步:关联设备
点击【关联到设备…】,选择要关联的伺服,点击【确定】。
第四步:机构参数配置
[1]电机每转的脉冲数目
由电机编码器分辨率决定
[2]工作每转的工作行程
例如:丝杆的螺距为10mm,则机构导程为10mm,unit的含义为mm。在运动指令中,位置参数的单位为mm,速度参数的单位为mm/s
[3]减速机输出转速、[4] 减速机输入转速
例如:减速机的速比为10:1,则输出转速设为1,输入转速设为10
参数配置完成界面如下
MC_Halt(停止指令)
(1)指令说明
①功能描述
控制轴按设定的减速度减速运动并停止,减速度及跃度由指令输入变量设定。
②引脚说明
(2)指令测试
①打开默认POU,插入MC_Power功能块
左右滑动查看更多
②插入MC_ReadStatus功能块,用于监控轴状态
左右滑动查看更多
③插入MC_MoveVelocity功能块
左右滑动查看更多
④添加网络,插入MC_Halt功能块
左右滑动查看更多
⑤进行MC_Halt功能块测试(以下为连续步骤)
a.触发轴监控指令MC_ReadStatus功能块
结果:轴处于Disabled(未使能)状态
b.触发轴使能MC_Power功能块
结果:轴变为Standstill(停止)状态
c.触发MC_MoveVelocity功能块
结果:轴以10的速度正向运转,轴状态变为ContinuousMotion(连续动作中)状态。
d.触发MC_Halt功能块
结果:轴立即停止运转,轴状态先变为DiscreteMotion(定位动作中)状态,后又变为Standstill(停止)状态。
e.再次触发MC_MoveVelocity功能块
结果:轴以10的速度正向运转,轴状态变为ContinuousMotion(连续动作中)状态。
【说明】可以看到无需复位MC_Halt指令的Execute引脚,执行其他运动控制指令也可以继续控制轴运行。
MC_Stop(停止并锁定指令)
(1)指令说明
①功能描述
控制轴按设定的减速度减速运动并停止,停止后轴状态会锁定在停止状态。
②引脚说明
(2)指令测试
①插入MC_Stop功能块
左右滑动查看更多
②进行MC_Stop功能块测试(以下为连续步骤)
a.先触发轴监控指令MC_ReadStatus功能块
结果:轴处于Disabled(未使能)状态
b.触发轴使能MC_Power功能块
结果:轴变为Standstill(停止)状态
c.触发MC_MoveVelocity功能块
结果:轴以10的速度正向运转,轴变为ContinuousMotion(连续动作中)状态
d.触发MC_Stop功能块
结果:轴立即停止运转,轴状态变为Stopping(减速停止)状态
e.再次触发MC_MoveVelocity功能块
结果:轴仍旧处于Stopping(减速停止)状态,MC_MoveVelocity功能块会报错,报错代码为5377(表示状态机限制不能执行此功能,要参照指令状态机执行规则)。
f.将MC_Stop功能块的Execute置FALSE
结果:轴仍旧处于停止状态,轴状态变为Standstill(停止)状态
g.再次触发MC_MoveVelocity功能块
结果:轴以10的速度正向运转,轴状态变为ContinuousMotion(连续动作中)状态
【说明】MC_Stop功能块执行过程中会将轴锁定,不能执行其他指令。只有将MC_Stop功能块的触发引脚Execute置FALSE,轴才不会被锁定,回到停止状态。
MC_StopAtPhase(指定相位停止指令)
(1)指令说明
①功能描述
控制轴停止在指定的相位。
②执行流程
步骤1:通过输入参数Execute的上升沿触发指令执行并控制轴按设定的速度运动(速度控制)。
步骤2:指令执行过程中,通过Stop的上升沿触发停止动作,最终轴将停止在指定的相位。
③引脚说明
(2)指令测试
①插入MC_StopAtPhase功能块
左右滑动查看更多
②插入MC_ReadActualPosition功能块
左右滑动查看更多
③设置机构参数
a.选择“循环模式”
b.机构类型选择“圆盘”
c.该指令使用时一般将RoundPhase和软件中“工作每转的工作行程”设置为相同的值
④进行MC_StopAtPhase功能块测试(以下为连续步骤)
a.触发MC_ReadStatus功能块和MC_ReadActualPosition功能块
结果:轴处于Disabled(未使能)状态
b.触发轴使能MC_Power功能块
结果:轴变为Standstill(停止)状态
c.触发MC_MoveVelocity功能块(Velocity=3600)
结果:轴以3600的速度正向运转, 轴状态变为ContinuousMotion(连续动作中)状态。
d.触发MC_StopAtPhase功能块Execute (Velocity=1800)
结果:轴以1800的速度正向运转,轴状态仍为ContinuousMotion(连续动作中)状态。
e.触发MC_StopAtPhase功能块Stop
结果:轴以1800的速度正向运转至达到指定相位180,轴状态先变为DiscreteMotion(定位动作中)状态,后又变为Standstill(停止)状态。
f.为了更好的体现MC_StopAtPhase指令控制轴停止在指定相位,这里修改MC_StopAtPhase功能块的StopPhase的值为300,触发MC_MoveVelocity功能块(Velocity=3600)
结果:轴以3600的速度正向运转, 轴状态变为ContinuousMotion(连续动作中)状态。
g.触发MC_StopAtPhase功能块Execute (Velocity=1800)
结果:轴以1800的速度正向运转,轴状态仍为ContinuousMotion(连续动作中)状态。
h.触发MC_StopAtPhase功能块Stop
结果:轴以1800的速度正向运转至达到指定相位300,轴状态先变为DiscreteMotion(定位动作中)状态,后又变为Standstill(停止)状态。
【说明】该指令可以通过设置功能块的停止相位的值,来控制轴的停止角度。
更多资料
更详细的指令介绍,请点击下方 “阅读原文” 查看《M系列控制器_运动控制指令手册》。
✦
控制技术产品线
✦

