loveplc

 找回密码
 立即注册
搜索
热搜: 活动 交友
查看: 191|回复: 0

S71200运动控制如何保持断电前的绝对位置

[复制链接]

284

主题

317

帖子

986

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
986
发表于 2019-9-30 19:13:56 | 显示全部楼层 |阅读模式
问题:如何保持断电前的绝对位置?
V4.2 固件 CPU
答:PN轴的绝对位置在使用绝对位置编码器的时候使用MC_HOME指令的模式6,7可以实现位置的断电保持;
但是在使用增量型编码器是不能断电保持的,CPU断电重新上电后,轴的绝对位置会重新变成0,要实现位置保持,可按照下面的步骤操作。
1. 在全局DB块里分别建立一个Bool和Real类型变量,勾选Real变量的保持性,如下图:
图. 06 创建变量
2.进入设备组态界面,在"系统和时钟存储器"页面启用系统存储器字节,分配系统存储器参数时,需要指定用作系统存储器字节的 CPU 存储器字节。 首次循环对应的位启动后的第一个程序循环中为 1 ,否则为 0。
图. 07 启用系统存储器字节
3.在 Main [OB1]中,先使用M1.0置位标志位,然后使用“MC_Power”指令启动轴后调用“MC_Home”指令的 Mode 0 ,重新装载断电前绝对位置,然后复位标志位,将当前位置“ActualPosition”传送到第一步建立的变量中。
在工艺对象里选中轴,右键打“开DB编辑器”,在“Static”下面找到“ActualPosition”。如下图:
注:如果存在多个运动控制指令,如“MC_Home”指令,每个指令的背景 DB 块需要单独创建,以免产生冲突。可以根据实际工艺情况,在合适的时间点执行“MC_Power”指令和“MC_Home”指令装载新的断电前的绝对位置。

V4.1 固件 CPU
答:轴的绝对位置是不能断电保持的,CPU断电重新上电后,轴的绝对位置会重新变成0,要实现位置保持,可按照下面的步骤操作。
1. 在全局DB块里建立Real类型变量,勾选变量的保持性,如下图:
图. 01 创建保持性变量
2. 在OB1中,将轴的当前位置“ActualPosition”传送到第一步建立的变量中。
在工艺对象里选中轴,右键打“开DB编辑器”,在“Static”下面找到“ActualPosition”。如下图:
图. 02 当前位置传送到保持性变量
3. 在启动OB中,使用“MC_Home”指令的 Mode 0 ,重新装载断电前绝对位置,如下图:
图. 03 保持性变量中的位置装载
注意:在 OB1 里再调用 MC_POWER 指令使用的背景 DB 必须与 OB100 启动 OB 里 MC_POWER 使用的背景 DB 相同。
V4.0 固件 CPU
由于无法在固件版本为V4.0的 CPU 的启动 OB 里使用“MC_Power”指令启动轴,可以使用如下方法实现保持断电前的绝对位置。
1. 在全局DB块里建立Real类型变量,勾选变量的保持性,如下图:
图. 04 创建保持性变量
2.进入设备组态界面,在"系统和时钟存储器"页面启用系统存储器字节,分配系统存储器参数时,需要指定用作系统存储器字节的 CPU 存储器字节。 首次循环对应的位启动后的第一个程序循环中为 1 ,否则为 0。
图. 05 启用系统存储器字节
3.在 Main [OB1]中,使用“MC_Power”指令启动轴后调用“MC_Home”指令的 Mode 0 ,重新装载断电前绝对位置。然后将当前位置“Position”传送到第一步建立的变量中。在工艺对象里选中轴,右键打“开DB编辑器”,在“Static”下面找到“Position”。如下图:
注:如果存在多个运动控制指令,如“MC_Home”指令,每个指令的背景 DB 块需要单独创建,以免产生冲突。可以根据实际工艺情况,在合适的时间点执行“MC_Power”指令和“MC_Home”指令装载新的断电前的绝对位置,本例中为第一个循环扫描周期就装载断电前的绝对位置。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

京ICP备17066637号-1|京公网安备|手机版|Archiver|小黑屋|loveplc

GMT+8, 2025-12-6 13:55 , Processed in 0.020531 second(s), 18 queries .

Powered by Discuz! Comsenz Inc.

© 2019 技高志远.

快速回复 返回顶部 返回列表