技术论坛

 回复:S7-1200 PTO回零讨论

返回主题列表
作者 主题
伊默
至圣

经验值:19260
发帖数:4259
精华帖:118
楼主    2012-01-02 17:05:36
主题:S7-1200 PTO回零讨论
V2.2固件的Motion功能块已经升级到V3.0了。但是回原点的过程好像还是不太理想?具体分析如下:
我的项目里要求的回零方向为从-至+,即正方向回零;只有一个原点开关,没有限位开关。 而且受机械结构的限制,机构在回零过程中最多能够检测到原点开关,但是不可能穿越整个原点开关。

现在的问题是:
1、如果回零前,原点开关没有实检测到,那么回零过程为: 正转->检测到原点开关->减速至0-->反转-->检测不到原点开关-->减速至0-->正转-->检测到原点开关-->立即停止,回零完成。
2、如果回零前,原点开关已经被检测到,那么回零过程为:正转-->穿越整个原点开关直到检测不到原点开关->减速至0->反转-->再次穿越整个原点开关->减速至零-->正转-->检测到原点开关->立即停止,回零完成。

针对第1种情况,没有任何问题。 而针对第2种情况,在回零开始前已经检测到了原点开关,按理说系统就可以开始就反转,然后检测不到原点开关,再正转,检测到原点开关,回零完成!
可是S7-1200不论什么情况,一开始始终是组态的方向(我组态为正转),那么在第2种情况下,它必须要正向穿越整 个原点开关区! 这在我的机械结构里是不允许的!而且实事上也是没有必须的!

为了解决这个问题,我只好程序做判断: 开始回零前,先判断原点开关是否已经被检测到。 如果没有检测到(情况1),那么直接启动MC_Home指令回零。 如果已经检测到原点开关(情况2),那么只要先使用JOG指令反转,直到原点开关丢失,再停止JOG,再启动MC_Home…… 白白浪费啊! 别的小PLC都具有自动识别的功能……
I can do it
筹笔驿
游士

经验值:156
发帖数:26
精华帖:2
6楼    2012-07-31 14:31:26
精华帖  主题:回复:S7-1200 PTO回零讨论
我最近也在使用V3.0,情况和你的类似,也是没有限位开关,一开始也觉得回零方式不太灵活。
后来找到一种方法:
在工艺对象DB块中,有设置或修改回零的参数:
● <轴名称>.Config.Homing.Direction
用于更改“逼近/回原点方向”
● <轴名称>.Config.Homing.SideActiveHoming
用于更改“回原点开关侧”

首先使用程序逻辑判断,要正转还是反转回零,即是:
情况一:挡片挡住参考开关,左 -> 右 找原点,
顺时针找原点
dir=1
side=0,
参考开关 1-> 0,下降沿实现回零;
情况二:挡片在参考开关右边,右 -> 左 找原点
逆时针找原点
dir=0
side=1,
参考开关 0-> 1,上升沿实现回零;

效果暂时还可以,欢迎大家讨论。
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。