1.MC_Halt 指令名称:停止轴运行指令 功能:停止所有运动并以组态的减速度停止轴。 使用技巧:常用MC_Halt指令来停止通过MC_MoveVelocity指令触发的轴的运行。 『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。 2.MC_Home 指令名称:回原点指令 功能:使轴归位,设置参考点,用来将轴坐标与实际的物理驱动器位置进行匹配。 使用要点:轴做绝对位置定位前一定要触发MC_Home指令。 『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。 ①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的该模式可以让用户在没有原点开关的情况下,进行绝对运动操作。 Mode = 1相对式直接回原点 与Mode = 0相同,以该模式触发MC_Home指令后轴并不运行,只是更新轴的当前位置值。更新的方式与Mode = 0不同,而是在轴原来坐标值的基础上加上“Position”数值后得到的坐标值作为轴当前位置的新值。如下图所示,指令MC_Home指令后,轴的位置值变成了210mm.,相应的a和c点的坐标位置值也相应更新成新值。 Mode = 2和Mode = 3已在前面介绍过,这里不再赘述。 『注意』用户可以通过对变量 <轴名称>.StatusBits.HomingDone = TRUE与运动控制指令“MC_Home”的输出参数 Done = TRUE进行与运算,来检查轴是否已回原点。 3.MC_MoveAbsolute 指令名称:绝对位置指令 功能:使轴以某一速度进行绝对位置定位。 使用技巧:在使能绝对位置指令之前,轴必须回原点。因此MC_MoveAbsolute指令之前必须有MC_Home指令。 『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。 指令输入端: ①Position:绝对目标位置值。 ②Velocity:绝对运动的速度。 4.MC_MoveJog 指令名称:点动指令 功能:在点动模式下以指定的速度连续移动轴。 使用技巧:正向点动和反向点动不能同时触发。 『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。 ①JogForward:正向点动,不是用上升沿触发,JogForward为1时,轴运行;JogForward为0时,轴停止。类似于按钮功能,按下按钮,轴就运行,松开按钮,轴停止运行。 ②JogBackward:反向电动,使用方法参考JogForward。 『注意』在执行点动指令时,保证JogForward和JogBackward不会同时触发,可以用逻辑进行互锁。 ③Velocity:点动速度。 『注意』Velocity数值可以实时修改,实时生效。 5.MC_MoveRelative 指令名称:相对距离指令 功能:使轴以某一速度在轴当前位置的基础上移动一个相对距离。 使用技巧:不需要轴执行回原点命令。 『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。 指令输入端: ①Distance:相对对轴当前位置移动的距离,该值通过正/负数值来表示距离和方向。 ②Velocity:相对运动的速度。 6.MC_MoveVelocity 指令名称:速度运行指令 功能:使轴以预设的速度运行 『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。 指令输入端: ①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 指令名称:启动/禁用轴。 功能:使能轴或禁用轴。 使用要点:在程序里一直调用,并且在其他运动控制指令之前调用并使能。 输入端: ①EN:该输入端是MC_Power指令的使能端,不是轴的使能端。 MC_Power 指令必须在程序里一直调用,并保证MC_Power指令在其他Motion Control指令的前面调用。 ②Axis:轴名称 可以有几种方式输入轴名称: a. 用鼠标直接从Portal软件左侧项目树中拖拽轴的工艺对象,如下图所示: b. 用键盘输入字符,则Portal软件会自动显示出可以添加的轴对象,如下图所示: c. 用拷贝的方式把轴的名称拷贝到指令上,如下图所示: d. 还可以用鼠标双击“Aixs”,系统会出现右边带可选按钮的白色长条框,这时用鼠标点击“选择按钮”,就会出现下图中的列表。 ③Enable:轴使能端 ∙Enable = 0: 根据StopMode设置的模式来停止当前轴的运行; ∙Enable = 1:如果组态了轴的驱动信号,则Enable=1时将接通驱动器的电源。 ④StopMode:轴停止模式 ∙StopMode=2:带有加速度变化率控制的紧急停止:如果用户组态了加速度变化率,则轴在减速时会把加速度变化率考虑在内,减速曲线变得平滑,如下图所示。 输出端: 结合ErrorID和ErrorInfo数值,查看手册或是Portal 软件的帮助信息中的说明,来得到错误原因。 8.MC_ReadParam 指令名称:读参数指令 功能:可在用户程序中读取轴工艺对象和命令表对象中的变量。 『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。 指令输入端: 下面列出了常用的轴工艺对象中部分参数: 1. 轴的位置和速度变量 ∙<轴名称>.Position:轴的位置设定值 ∙<轴名称>.ActualPosition:轴的实际位置 ∙<轴名称>.Velocity:轴的速度设定值 ∙<轴名称>.ActualVelocity:轴的实际速度 2. 回原点变量 ∙<轴名称>.Homing.AutoReversal:主动归位期间激活硬限位开关处的自动反向 ∙<轴名称>.Homing.ApproachDirection:主动归位期间的逼近方向和归位方向 ∙<轴名称>.Homing.ApproachVelocity:主动归位期间轴的逼近速度 ∙<轴名称> 3. 单位变量 ∙<轴名称>.Units.LengthUnit:参数的已组态测量单位 4.机械变量 ∙<轴名称>.Mechanics.LeadScrew:每转的距离 5.轴StatusPositioning变量 ∙<轴名称> ∙<轴名称> 6.轴的DynamicDefaults变量 ∙<轴名称> ∙<轴名称> ∙<轴名称> ∙<轴名称>.DynamicDefaults.Jerk:轴加速斜坡和减速斜坡期间的冲击 7.PositionLimitesSW变量 ∙<轴名称>.PositionLimitsSW.Active:软限位开关激活 ∙<轴名称> ∙<轴名称> 8.PositionLimitesHW变量 ∙<轴名称>.PositionLimitsHW.Active:硬限位开关激活 ∙<轴名称>. ∙<轴名称>. ∙<轴名称> ∙<轴名称> 9.MC_Reset 指令名称:确认故障 功能:用来确认“伴随轴停止出现的运行错误”和“组态错误”。 使用要点:Execute用上升沿触发。 『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。 输入端: ∙Restart = 0:用来确认错误。 ∙Restart = 1:将轴的组态从装载存储器下载到工作存储器(只有在禁用轴的时候才能执行该命令)。 输出端:除了Done指令,其他输出管脚同MC_Power指令,这里不再赘述。 10.MC_WriteParam 指令名称:写参数指令 功能:可在用户程序中写入或是更改轴工艺对象和命令表对象中的变量。 『注意』部分输入/输出管脚没有具体介绍,请用户参考MC_Power指令中的说明。 ①参数类型:与“Parameter”数据类型一致 上图以回原点方向为例,“Parameter”管脚输入:<轴名称>.Homing.ApproachDirection,由于该轴的名称为“轴_1”,所以例子中的地址就是:“轴_1“.Homing.ApproachDirection。该变量是Bool类型的变量,因此在“Value”管脚中输入一个Bool类型的变量地址,同时指令的参数类型也是Bool。 |
|
来自: 新用户25123383 > 《文件夹1》