『魔法零蛋』干货丨两轴定位程序案例分析

【『魔法零蛋』干货丨两轴定位程序案例分析】
本文作者:技成杨遇桥
程序截图
『魔法零蛋』干货丨两轴定位程序案例分析
本文插图
注意:此程序非完整运行程序 , 主要是想让大家理解定位指令配合变址节约程序步 , 简化程序内容用 。 且两轴是在同时运行 , 如是十字滑台 , 请设定两轴相同频率脉冲输出.
开机初始化回原点部分
『魔法零蛋』干货丨两轴定位程序案例分析
本文插图
使用开机脉冲【M8002】和外部输入触点【X11】的脉冲信号来置位【M0】 , 保持住开机信号或回原点信号;
再使用【M0】的常开触点驱动【ZRN】原点回归指令;
其中K5000表示回归的速度为5000HZ , K200表示爬行速度 , 当X1或X0触点接通时 , 即开始以爬行速度回原点 。
【M8029】脉冲结束标志位 , 当【Y0】和【Y1】脉冲口不再发送脉冲 , 就复位掉【M0】 , 以便下次驱动原点回归指令 。
点位采集部分
『魔法零蛋』干货丨两轴定位程序案例分析
本文插图
使用外部常开输入触点【x3】【x4】【x6】【x7】驱动【DDRVI】32位相对定位指令 , 达到轴的正反方向运行目的 , 其中【K999999】表示正向运行 , 【K-999999】表示反向运行 , 数值均发送的脉冲数 , K999999表示无数脉冲 。
使用外部输入触点【X5】的脉冲信号 , 利用【DMOV】32位传送指令把【Y0】脉冲输出总数寄存器【D8141、D8140】和【Y1】脉冲输出总数寄存器【D8143、D8142】的当前脉冲数传送给【D100Z0】【D200Z1】 。 同时使用【ADD】加法指令把变址寄存器【Z0、Z1】的值不断加【2】 , 实现把不同点位所需脉冲数值存放给不同的寄存器
注意:每按一次按钮 , 就代表存储一个点的数值 , 固定的框架内 , 原点到每次按按钮的脉冲数 , 由【D8141、D8140】【D8143、D8142】提供 。
两轴运行部分
『魔法零蛋』干货丨两轴定位程序案例分析
本文插图
使用外部输入触点【X10】的脉冲信号驱动【MOV】传送指令把变址寄存器【Z0、Z1】的数值清零 , 同时驱动【DDRVA】绝对定位指令 。 其中【D100Z0】【D200z1】为上面采集到的脉冲数 , K5000表示两轴使用同一频率发送脉冲;
使用【M8029】脉冲结束标志位 , 脉冲发送完成复位【M10】【M12】 , 使两轴停止 , 同时驱动【ADD】加法指令改变变址寄存器【Z0、Z1】的数值 , 从而实现下一次运行时脉冲数的改变;
置位【M13、M14】表示两轴都停止的时候 , 驱动一个定时器【T0】 , 停止一秒 , 一秒后重新驱动定位指令 。
注意:此处两轴都停止后 , 可以实现例如:器材切割、钻孔、或者夹物放物等内容 , 程序需自己编写添加 。
领取学习资料