3. 轴指令(omron 机器自动化控制器)——>MC_HomeWithParameter&MC_Move

机器自动化控制器------第三章 轴指令 3

MC_HomeWithParameter

  • 指定原点复位参数,驱动电机,使用极限信号、近原点信号、原点信号确定机械原点。
指令 名称 FB/ FUN 图形表现 ST表现
MC_HomeWith Parameter 参数指定 原点复位 FB MC_HomeWithParameter_instance ( Axis :=《参数》 , HomingParameter :=《参数》 , Execute :=《参数》 , Done =>《参数》 , Busy =>《参数》 , CommandAborted =>《参数》 , Error =>《参数》 , ErrorID =>《参数》 );
  • 版本相关信息
  • Ver.1.03以上的CPU单元和Ver.1.04以上的Sysmac Studio组合时可使用本指令。

变量

输入变量 名称 数据类型 有效范围 初始值 内容
Execute 启动 BOOL TRUE, FALSE FALSE 在上升沿开始指令。
▶输入变量
输出变量 名称 数据类型 有效范围 内容
Done 完成 BOOL TRUE, FALSE 指令执行完毕时变为TRUE。
Busy 执行中 BOOL TRUE, FALSE 接收指令后变为TRUE。
CommandAborted 执行中断 BOOL TRUE, FALSE 指令中止时,变为TRUE。
Error 错误 BOOL TRUE, FALSE 发生异常时变为TRUE。
ErrorID 错误代码 WORD *1 发生异常时,输出错误代码。16#0000为正常。
  • 1.请参阅"A-1错误代码一览(P.A-2)"。

► 输出变量的反映时间

变量 变为TRUE的时间 变为FALSE的时间
Done 指令完成时 • Execute为TRUE时,与Execute的FALSE同时 • Execute为FALSE时,1个周期后
Busy Execute的上升沿 • Done变为TRUE时 • Error变为TRUE时 • CommandAborted变为TRUE时
CommandAborted • 利用其它指令多重启动运动指令(中断),中止本指 令时 • 因发生异常,中止本指令时 • 发生异常过程中,启动本指令时 • 执行MC_Stop指令中,启动本指令时 • Execute为TRUE时,与Execute的FALSE同时 • Execute为FALSE时,1个周期后
Error 本指令的启动条件或输入参数中含有异常因素时 异常已解除时
▶输出变量
输入输出变量 名称 数据类型 有效范围 内容
Axis _sAXIS_REF 指定轴。 *1
HomingParameter 原点复位参数 sHOMING REF 设定原点复位参数。 *2
  • 1.请使用在SysmacStudio的轴基本设定画面中创建的用户定义变量的轴变量名称(默认"MC_Axis")或系统定义变量的轴变量名称(_MC_AX[],_MC1_AX[],_MC2_AX[])。HomingParameter原点复位参数_sHOMING_REF-设定原点复位参数。
  • 2.请定义_sHOMING_REF型的用户定义变量。HomingMode原点复位动作

► _sHOMING_REF

结构要素变量 名称 数据类型 有效范围 功能
HomingMode 原点复位动作 eMC HOMING_ MODE 0: _mcHomeSwTurn HomeSwOff 1: _mcHomeSwTurn HomeSwOn 4:_mcHomeSwOff 5:_mcHomeSwOn 8:_mcLimitInputOff 9:_mcHomeSwTurn HomeMask 11:_mcLimitInputOnly 12:_mcHomeSwTurn HoldingTime 13:_mcNoHomeSw HoldingHomeInput 14:_mcHomePreset 指定要改写的原点复位动作。 0:指定为附近避让、近原点输入OFF 1:指定为附近避让、近原点输入ON 4:指定为近原点输入OFF 5:指定为近原点输入ON 8:指定为极限输入OFF 9:指定为附近避让、原点输入屏蔽距离 11:仅极限输入 12:指定为附近避让、接触时间 13:指定为无近原点输入、接触原点输入 14:原点预设
HomeInput 原点输入信号 eMC HOME_ INPUT 0:_mcZPhase 1:_mcExternalSignal 选择原点输入信号。 0:使用Z相输入 1:使用外部原点输入*1
StartDir 原点复位开始 方向 eMC DIRECTION 0:_mcPositiveDirection 2:_mcNegativeDirection 设定启动原点复位时的开始方向。 0:正方向 2:负方向
HomeDir 原点检测方向 eMC DIRECTION 0:_mcPositiveDirection 2:_mcNegativeDirection 设定原点复位的原点输入检测方向。 0:正方向 2:负方向
PosiLmtMode 正方向极限输 入时动作 eMC LIMIT_ REVERSE_ MODE 0:_mcErrorStop 1:_mcRevImmediateStop 2:_mcRevDeceleration Stop 设定原点复位中正方向极限输入"ON"时的 停止方法。 0:不反转/轴异常而停止(遵照极限输入停止 方法) 1:反转/立即停止 2:反转/减速停止
NegaLmtMode 负方向极限输 入时动作 eMC LIMIT_ REVERSE_ MODE 0:_mcErrorStop 1:_mcRevImmediateStop 2:_mcRevDeceleration Stop 设定原点复位中负方向极限输入"ON"时的 停止方法。 0:不反转/轴异常而停止(遵照极限输入停止 方法) 1:反转/立即停止 2:反转/减速停止
Vel 原点复位速度 LREAL 正数 设定原点复位中的速度。 请设定为最高速度以下,并且满足原点复位 接近速度≤原点复位速度。 单位为[指令单位/s]。*2
ApproachVel 原点复位接近 速度 LREAL 正数 设定近原点输入ON后的速度。 请设定为最高速度以下,并且满足原点复位 接近速度≤原点复位速度。 单位为[指令单位/s]。*2
Acc 原点复位 加速度 LREAL 正数或"0" 指定原点复位时的加速度。 设定为"0"时不加速。 单位为[指令单位/s2]。*2
Dec 原点复位 减速度 LREAL 正数或"0" 指定原点复位时的减速度。 设定为"0"时不减速。 单位为[指令单位/s2]。*2
Jerk 原点复位跃度 LREAL 正数或"0" 指定原点复位时的跃度。 设定为"0"时无跃度。 请在脉冲单位40位以内设定。 单位为[指令单位/s3]。*2
Mask 原点输入屏蔽 距离 LREAL 正数或"0" 对原点复位动作模式指定为附近避让、原点 输入屏蔽距离时原点输入的屏蔽距离进行 设定。 单位为[指令单位]。*2
Offset 原点位置偏置 LREAL 负数、正数、"0" 原点复位完成时,按照设定值预设当前 位置。 在旋转模式下设定时,请确保满足环计数器 下限值≤原点位置偏置<环计数器上限值。 并且,请在脉冲单位40位以内设定。 单位为[指令单位]。*2
PushTime 原点复位接触 时间 UINT 0~10,000 以毫秒为单位,对原点复位动作模式指定为 附近避让、接触时间时的接触时间进行 设定。 单位为[ms]。
Compensation 原点复位 补偿值 LREAL 负数、正数、"0" 设定原点复位的原点确定后的原点复位补偿 量。 在旋转模式下设定时,请确保满足|原点复 位补偿值|<|环计数器上限值-环计数器 下限值|。并且,请在脉冲单位40位以内 设定。 单位为[指令单位]。*2
Compensation Vel 原点复位补偿 速度 LREAL 正数 设定原点复位补偿时的速度。 请确保在最高速度以下。 单位为[指令单位/s]。*2
  • 1.使用欧姆龙制伺服驱动器1S系列及G5系列时可指定。将分配给伺服驱动器的锁定功能1的输入用作外部原点输入。伺服驱动器1S系列及G5系列的初始状态下,将外部锁定输入1分配给锁定功能1。详情请参阅"AC伺服电机/驱动器1S系列EtherCAT通信内置型用户手册(SBCE-377)"、"AC伺服电机/驱动器G5系列EtherCAT通信内置型用户手册(SBCE-365)"及"AC伺服电机/驱动器G5系列EtherCAT通信内置直线电机型用户手册(SBCE-366)"。
  • 2.关于指令单位,请参阅"NJ/NX系列CPU单元用户手册运动控制篇(SBCE-363)"或"NY系列工业用平板电脑/工业用台式电脑用户手册运动控制篇(SBCE-379)"的"单位转换设定"。

功能说明

  • 对于Axis(轴)指定的轴,在Execute(启动)的上升沿开始原点复位动作。
  • 参数指定原点复位指令中使用的各种参数由输入输出变量HomingParameter来设定。
  • 执行本指令不会变更轴参数。
  • 本指令与MC_Home(原点复位)指令的不同之处仅在于各种参数的设定方法。
  • 利用本指令,可由输入输出变量HomingParameter来设定各种参数。
  • 利用MC_Home(原点复位)指令,可通过Sysmac Studio的轴参数[原点复位动作]来设定各种参数。
  • 关于各种参数的设定方法以外的指令规格,请参阅"MC_Home(P.3-15)"。
  • 使用注意事项
  • 本指令指定的原点复位参数仅在执行本指令时有效。
  • 依次执行本指令、MC_Home(原点复位)指令后,根据轴参数设定的原点复位参数进行动作。
▶原点复位动作与原点复位参数的关系
  • 原点复位参数中,根据原点复位动作的设定,存在不使用的参数。
  • 不使用的参数并非范围检查和匹配检查的对象。
  • 执行本指令时,执行范围检查和匹配检查。
  • 对于原点复位动作的设定,是否使用各原点复位参数,如下表所示。
原点复位参数
原点复位动作 原点输入信号 原点复位开始方向 原点检测方向 正方向极限输入时动作 负方向极限输入时动作 原点复位速度 原点复位接近速度 原点复位加速度 原点复位减速度 原点复位跃度 原点输入屏蔽距离 原点位置偏置 原点复位接触时间 原点复位补偿值 原点复位补偿速度
指定为附近避让、近原点输入OFF × ×
指定为附近避让、近原点输入ON × ×
指定为近原点输入OFF × ×
指定为近原点输入ON × ×
指定为极限输入OFF × ×
指定为附近避让、原点输入屏蔽距离 ×
仅极限输入 × × ×
指定为附近避让、接触时间 × ×
指定为无近原点输入、接触原点输入 × ×
原点预设 × × × × × × × × × × × × × ×
  • (○:使用参数、×:不使用参数)
  • 参考
  • 使用NX系列位置接口单元时,无法选择使用接触的原点复位动作模式。

  • 详情请参阅"NX系列 位置接口单元 用户手册(SBCE-374)"。

▶重启运动指令
  • 无法重启本指令。
  • 重启后,将发生"无法重启运动指令(错误代码:543B Hex)"错误
▶多重启动运动指令
  • 多重启动运动指令的详情,请参阅"NJ/NX系列 CPU单元 用户手册 运动控制篇(SBCE-363)"或"NY系列 工业用平板电脑/工业用台式电脑 用户手册 运动控制篇(SBCE-379)"
▶错误代码
  • 关于指令发生的异常,请参阅"A-1 错误代码一览(P.A-2)"。

MC_Move

  • 进行绝对值定位或相对值定位。
指令 名称 FB/ FUN 图形表现 ST表现
MC_Move 定位 FB MC_Move_instance ( Axis :=《参数》 , Execute :=《参数》 , Position :=《参数》 , Velocity :=《参数》 , Acceleration :=《参数》 , Deceleration :=《参数》 , Jerk :=《参数》 , Direction :=《参数》 , BufferMode :=《参数》 , MoveMode :=《参数》 , Done =>《参数》 , Busy =>《参数》 , Active =>《参数》 , CommandAborted =>《参数》 , Error =>《参数》 , ErrorID =>《参数》 );

变量

▶输入变量
输入变量 名称 数据类型 有效范围 初始值 内容
Execute 启动 BOOL TRUE, FALSE FALSE 在上升沿开始指令
Position 目标位置 LREAL 负数、正数、"0" 0 对移动方法选择指定绝对定位时, 指定绝对坐标的目标位置。 对移动方法选择指定相对定位时, 指定相对位置。 单位为[指令单位]。 *1
Velocity 目标速度 LREAL 正数 0 指定目标速度。*2 单位为[指令单位/s] 。*1
Acceleration 加速度 LREAL 正数或"0" 0 指定加速度。 单位为[指令单位/s2]。*1
Deceleration 减速度 LREAL 正数或"0" 0 指定减速度。 单位为[指令单位/s2]。*1
Jerk 跃度 LREAL 正数或"0" 0 指定跃度。 单位为[指令单位/s3]。*1
Direction 方向选择 _eMC_DIRECTION 0: _mcPositiveDirection 1: _mcShortestWay 2: _mcNegativeDirection 3: _mcCurrentDirection 4: _mcNoDirection 0 *3 MoveMode为[0:绝对值定位] *4, 计数模式为[旋转模式]时,指定旋 转方向。 0:指定为正方向 1:指定为附近 2:指定为负方向 3:指定为当前方向 4:无方向指定
BufferMode 缓存模式选择 eMC_BUFFER MODE 0: _mcAborting 1: _mcBuffered 2: _mcBlendingLow 3: _mcBlendingPrevious 4: _mcBlendingNext 5: _mcBlendingHigh 0 *3 指定多重启动运动指令时的动作。 0:中断 1:等待 2:以低速合并 3:以前一个速度合并 4:以后一个速度合并 5:以高速合并
MoveMode 移动方法选择 eMC_MOVE MODE 0: _mcAbsolute 1: _mcRelative 0 *3 选择移动方法。 0:绝对值定位 1:相对值定位
  • 1.关于指令单位,请参阅"NJ/NX系列CPU单元用户手册运动控制篇(SBCE-363)"或"NY系列工业用平板电脑/工业用台式电脑用户手册运动控制篇(SBCE-379)"的"单位转换设定"。
  • 2.请务必设定目标速度。不作设定就执行动作,将超出目标速度设定范围(错误代码:5422Hex)。
  • 3.有效范围为枚举体的变量,其实际初始值不是数值,而是枚举元素。
  • 4.MoveMode为[1:相对值定位]时,以Position的符号确定移动方向。
▶输出变量
输出变量 名称 数据类型 有效范围 内容
Done 完成 BOOL TRUE, FALSE 指令执行完毕时变为TRUE。
Busy 执行中 BOOL TRUE, FALSE 接收指令后变为TRUE。
Active 控制中 BOOL TRUE, FALSE 控制中变为TRUE。
CommandAborted 执行中断 BOOL TRUE, FALSE 指令中止时,变为TRUE。
Error 错误 BOOL TRUE, FALSE 发生异常时变为TRUE。
ErrorID 错误代码 WORD *1 发生异常时,输出错误代码。16#0000为正常。
    1. 请参阅 "A-1 错误代码一览(P.A-2)"

► 输出变量的反映时间

变量 变为TRUE的时间 变为FALSE的时间
Done 定位完成后 • Execute为TRUE时,与Execute的FALSE同时 • Execute为FALSE时,1个周期后
Busy Execute的上升沿 • Done变为TRUE时 • Error变为TRUE时 • CommandAborted变为TRUE时
Active 开始指令后 • Done变为TRUE时 • Error变为TRUE时 • CommandAborted变为TRUE时
CommandAborted • 利用其它指令多重启动运动指令(中断),中止本 指令时 • 因发生异常,中止本指令时 • 发生异常过程中,启动本指令时 • 执行MC_Stop指令中,启动本指令时 • Execute为TRUE时,与Execute的FALSE同时 • Execute为FALSE时,1个周期后
Error 本指令的启动条件或输入参数中含有异常因素时 异常已解除时
▶输入输出变量
输入输出变量 名称 数据类型 有效范围 内容
Axis _sAXIS_REF 指定轴。 *1
  • 1.请使用在SysmacStudio的轴基本设定画面中创建的用户定义变量的轴变量名称(默认"MC_Axis")或系统定义变量的轴变量名称(_MC_AX[],_MC1_AX[],_MC2_AX[])。

功能说明

  • 可进行绝对值定位或相对值定位。
  • 对MoveMode(移动方法选择)指定"绝对值定位"时,产生与MC_MoveAbsolute(绝对值定位)指令相同的动作。
  • 同样,指定"相对值定位"时,产生与MC_MoveRelative(相对值定位)指令相同的动作。
  • 作为相对值定位指令动作时,不使用Direction(方向选择)。
  • 详情请参阅"MC_MoveAbsolute(P.3-47)"或"MC_MoveRelative(P.3-73)"。
▶指令详情
  • 下面对本指令详细说明。
  • 使用注意事项
  • 进行绝对值定位时,请在轴参数的[环计数器上限设定值]、以及[环计数器下限设定值]的范围内指定目标位置。
  • 不在[环计数器上限设定值]和[环计数器下限设定值]的范围内指定目标位置时,将发生"超出目标位置设定范围(错误代码:5478Hex)"错误。

► 到位检查

  • 根据轴参数的[到位宽度]、[到位检查时间]的设定,进行本指令的到位检查。
▶重启运动指令
  • 在定位动作中变更输入变量,再次将Execute(启动)设为TRUE,可变更本指令的动作。
  • 重启运动指令可变更的输入变量有Position(目标位置)、Velocity(目标速度)、Acceleration(加速度)、Deceleration(减速度)。
  • 重启运动指令的详情,请参阅"NJ/NX系列 CPU单元 用户手册 运动控制篇(SBCE-363)"或"NY系列 工业用平板电脑/工业用台式电脑 用户手册 运动控制篇(SBCE-379)"。
▶多重启动运动指令
  • 多重启动运动指令的详情,请参阅"NJ/NX系列 CPU单元 用户手册 运动控制篇(SBCE-363)"或"NY系列 工业用平板电脑/工业用台式电脑 用户手册 运动控制篇(SBCE-379)"。

► 其它指令执行中的本指令启动

  • 对当前正在执行的指令启动本指令,可切换或缓存到本指令。
  • 各轴可缓存到1个。
  • 多重启动时的本指令的动作由BufferMode(缓存模式选择)指定。
缓存模式选择 说明
中断 立即中止当前正在执行的指令,切换为本指令。 轴的动作方向因指令切换而反转时,根据轴参数中的"反转时动作"进行反转。
等待 当前正在执行的指令正常完成后,已缓存的本指令自动启动。
合并 以低速合并 以前一个速度合 并 以后一个速度合 并 以高速合并 以当前正在执行的指令到达目标位置时的速度(中继速度)为启动速度,连续使已缓存的本 指令动作。变更当前正在执行的指令的动作,确保以中继速度到达目标位置。中继速度的 指定方法分为如下4种。
以低速合并 当前正在执行的目标速度与已缓存的目标速度中,以速度较低者为中继速度。
以前一个速度合 并 以当前正在执行的目标速度为中继速度。
以后一个速度合 并 以已缓存的本指令的目标速度为中继速度。
以高速合并 当前正在执行的目标速度与已缓存的目标速度中,以速度较高者为中继速度。
  • 关于BufferMode(缓存模式选择),请参阅"NJ/NX系列 CPU单元 用户手册 运动控制篇(SBCE-363)"或"NY系列 工业用平板电脑/工业用台式电脑 用户手册 运动控制篇(SBCE-379)"。

► 本指令执行中的其它指令启动

  • 对本指令进行多重启动运动指令时,可选择中断、等待、合并。
▶异常

► 发生异常时的时序图

  • 在执行本指令中发生异常时,Error(错误)变为TRUE,轴停止动作。
  • 可查看ErrorID(错误代码)的输出值,了解发生异常的原因。

► 错误代码

  • 关于指令发生的异常,请参阅"A-1 错误代码一览(P.A-2)"。
相关推荐
_.Switch13 分钟前
高级Python自动化运维:容器安全与网络策略的深度解析
运维·网络·python·安全·自动化·devops
2401_8504108314 分钟前
文件系统和日志管理
linux·运维·服务器
JokerSZ.17 分钟前
【基于LSM的ELF文件安全模块设计】参考
运维·网络·安全
芯盾时代1 小时前
数字身份发展趋势前瞻:身份韧性与安全
运维·安全·网络安全·密码学·信息与通信
心灵彼岸-诗和远方2 小时前
DevOps业务价值流:架构设计最佳实践
运维·产品经理·devops
一只哒布刘2 小时前
NFS服务器
运维·服务器
苹果醋33 小时前
Java8->Java19的初步探索
java·运维·spring boot·mysql·nginx
二十雨辰3 小时前
[linux]docker基础
linux·运维·docker
Jason-河山4 小时前
【自动化更新,让商品信息跳舞】——利用API返回值的幽默编程之旅
运维·自动化