• «
  • 1
  • 2
  • »
  • Pages: 1/2     Go
fuyuesong123
级别: 略有小成
精华主题: 0
发帖数量: 214 个
工控威望: 371 点
下载积分: 882 分
在线时间: 114(小时)
注册时间: 2009-05-07
最后登录: 2023-04-25
查看fuyuesong123的 主题 / 回贴
楼主  发表于: 2012-05-02 22:15
硬件配置 FX1N-60MT 松下A4伺服 一个原点检测感应器
软件
m111上升沿SET m160  原点感应器X3OR m8148下降沿 RST M160
M160 OUT DDRVI D20 D24 Y1 M99
伺服电机只有一个运行方向,要求每次都能停止在原点位置
但是这个程序执行结果没吃都不能达到原点位置。经常要冲过原点位置才停止 这样造成每次停止的位置都不一样 ,
请各位大侠帮忙看看这个是什么问题造成的
怎么样解决这个问题!
dylan0719
级别: 家园常客
精华主题: 0
发帖数量: 60 个
工控威望: 759 点
下载积分: 3004 分
在线时间: 34(小时)
注册时间: 2010-07-20
最后登录: 2015-09-05
查看dylan0719的 主题 / 回贴
1楼  发表于: 2012-05-02 23:11
在三菱FX的编程指令里,和你说的原点感应器相关的指令应该是ZRN(回原点)指令,在这条指令里,传感器其实是一个近点开关,而不是原点开关,ZRN指令执行后,PLC输出脉冲,近点开关ON后,马达开始减速,近点开关有ON到OFF后,脉冲输出停止。
不管是ZRN也好,还是DRVA  DRVI,在使用过程中都会由一个问题:PLC的定位定位曲线为梯形曲线,当控制一个步进马达时,由于惯性以及加减速时间设置的不当,都有可能造成丢步或者是过冲。尤其是用ZRN指令控制一个步进马达回原点时,速度设定快一点,马达过了近点感应器一段距离才能停下;速度慢一点,情况会好一点。总之不能满足我们的要求。这是顽症,很难解决。
wow588
级别: 略有小成
精华主题: 0
发帖数量: 171 个
工控威望: 309 点
下载积分: 2831 分
在线时间: 139(小时)
注册时间: 2012-02-11
最后登录: 2024-05-09
查看wow588的 主题 / 回贴
2楼  发表于: 2012-05-02 23:16
以前同事也碰到过
fuyuesong123
级别: 略有小成
精华主题: 0
发帖数量: 214 个
工控威望: 371 点
下载积分: 882 分
在线时间: 114(小时)
注册时间: 2009-05-07
最后登录: 2023-04-25
查看fuyuesong123的 主题 / 回贴
3楼  发表于: 2012-05-03 08:48
谢谢1楼的详细回答,我的控制思路是这样的让PLC发送脉冲数大于一周,然后执行机构在旋转过一周时会经过这个检测原点的感应器然后就复位脉冲输出的执行条件从而停止脉冲输出~
木獬
花看堪折直须折,莫待无花空折枝。
级别: 略有小成
精华主题: 0
发帖数量: 278 个
工控威望: 433 点
下载积分: 6037 分
在线时间: 252(小时)
注册时间: 2010-09-13
最后登录: 2024-04-28
查看木獬的 主题 / 回贴
4楼  发表于: 2012-05-03 10:04
引用
引用第3楼fuyuesong123于2012-05-03 08:48发表的  :
谢谢1楼的详细回答,我的控制思路是这样的让PLC发送脉冲数大于一周,然后执行机构在旋转过一周时会经过这个检测原点的感应器然后就复位脉冲输出的执行条件从而停止脉冲输出~

你这样肯定是不准的,你还是要算出要走多少距离发多少脉冲,然后可以用原点感应校对,相当于加个保险。
bocc
级别: 网络英雄
精华主题: 0
发帖数量: 622 个
工控威望: 5239 点
下载积分: 3143 分
在线时间: 986(小时)
注册时间: 2009-09-13
最后登录: 2016-07-01
查看bocc的 主题 / 回贴
5楼  发表于: 2012-05-03 12:20
帮顶一下
fuyuesong123
级别: 略有小成
精华主题: 0
发帖数量: 214 个
工控威望: 371 点
下载积分: 882 分
在线时间: 114(小时)
注册时间: 2009-05-07
最后登录: 2023-04-25
查看fuyuesong123的 主题 / 回贴
6楼  发表于: 2012-05-03 13:46
引用
引用第4楼木獬于2012-05-03 10:04发表的  :

你这样肯定是不准的,你还是要算出要走多少距离发多少脉冲,然后可以用原点感应校对,相当于加个保险。

能具体说说吗
gaop001
级别: 略有小成
精华主题: 0
发帖数量: 60 个
工控威望: 235 点
下载积分: 471 分
在线时间: 7(小时)
注册时间: 2007-08-03
最后登录: 2017-12-27
查看gaop001的 主题 / 回贴
7楼  发表于: 2012-05-03 14:08
这个就像你开车到路口停车线才发现红灯亮了,你是很难不超过停车线的
木獬
花看堪折直须折,莫待无花空折枝。
级别: 略有小成
精华主题: 0
发帖数量: 278 个
工控威望: 433 点
下载积分: 6037 分
在线时间: 252(小时)
注册时间: 2010-09-13
最后登录: 2024-04-28
查看木獬的 主题 / 回贴
8楼  发表于: 2012-05-03 16:28
引用
引用第6楼fuyuesong123于2012-05-03 13:46发表的  :

能具体说说吗

不够清楚吗,你现在的控制还没走完脉冲直接用原点感应复位了,那他没有减速停止,相当于急停,那马达本身有惯性,还有感应器灵敏都,还有PLC接受时间等影响,你每次走得肯定都不一样,你这样控制还不如用2个感应器用速度控制(跟变频器减速停止一样控制),用脉冲指令位置控制就毫无意义了。你现在好比要走360个脉冲是一圈,就同样用DRVI  K360  K3000  Y1 M99等发完后用原点感应点个好比Y3给伺服清零,那下次要走就同样重复就好了。
[ 此帖被木獬在2012-05-03 16:49重新编辑 ]
dylan0719
级别: 家园常客
精华主题: 0
发帖数量: 60 个
工控威望: 759 点
下载积分: 3004 分
在线时间: 34(小时)
注册时间: 2010-07-20
最后登录: 2015-09-05
查看dylan0719的 主题 / 回贴
9楼  发表于: 2012-05-03 23:29
引用
引用第3楼fuyuesong123于2012-05-03 08:48发表的  :
谢谢1楼的详细回答,我的控制思路是这样的让PLC发送脉冲数大于一周,然后执行机构在旋转过一周时会经过这个检测原点的感应器然后就复位脉冲输出的执行条件从而停止脉冲输出~

你的停止方式是急停,而不是曲线控制,马达没有减速过程,由于惯性的影响,难免出现误差,并且复位用的传感器多少都存在一定的误差,可能反应快一点,也可能反应慢一点,这样每次走的脉冲数都不一样了,根本就没有用到脉冲精确定位的功能。
你应该用DRVI(相对定位指令)(相当于JOG运行)驱动马达走一圈,计算一下马达走一圈需要多少个脉冲(也可以通过计算得到),然后在实际的定位控制中采用DRVA指令,让你的马达每一次都走固定的你计算所得到的脉冲数,这样就能达到你的要求了。
gcbplc
QQ3130569178 PLC编程、登录口令修改删除、调试
级别: 工控侠客
精华主题: 0
发帖数量: 339 个
工控威望: 3228 点
下载积分: 11794 分
在线时间: 396(小时)
注册时间: 2011-06-23
最后登录: 2024-05-06
查看gcbplc的 主题 / 回贴
10楼  发表于: 2012-05-04 23:48
各位大哥分析的很清楚,学习了!
时间都去哪了?!!!
QQ3130569178 PLC编程、登录口令修改删除、调试、备份 ;FB块口令解除
946821
级别: 略有小成
精华主题: 0
发帖数量: 68 个
工控威望: 215 点
下载积分: 746 分
在线时间: 13(小时)
注册时间: 2008-04-26
最后登录: 2023-12-08
查看946821的 主题 / 回贴
11楼  发表于: 2012-05-05 08:13
可不可以这样呢,用走脉冲控制,每次都走同一个数量的脉冲,那个原点感应做为原点较正,每次感应到就将原点归零,这样走个几次后就可看出需要走多少脉冲,再重新设定。这样做的话,在近原点时马达会有减速过程,比较易控制
  • «
  • 1
  • 2
  • »
  • Pages: 1/2     Go