丁丁
级别: 探索解密
精华主题: 0
发帖数量: 19 个
工控威望: 197 点
下载积分: 496 分
在线时间: 10(小时)
注册时间: 2007-04-20
最后登录: 2020-11-15
查看丁丁的 主题 / 回贴
楼主  发表于: 2009-12-30 13:20
用FX1N PLC、MR-J25放大器、伺服电机组成简易位置控制系统,位置信号用PLC脉冲输出。如果要得到伺服电机当前的实际运行位置,是应该通过读PLC中的D寄存器,还是应该通过高速计数器来读编码器输出的脉冲。谢谢!
cvlsam
富士低压,POD(觸摸屏),PLC专卖
级别: VIP会员

精华主题: 3 篇
发帖数量: 6740 个
工控威望: 37095 点
下载积分: 9234 分
在线时间: 9402(小时)
注册时间: 2006-09-13
最后登录: 2024-05-20
查看cvlsam的 主题 / 回贴
1楼  发表于: 2009-12-30 13:53
正常来讲,要读取高速计数器读到的伺服的反馈脉冲。

读取PLC的D时,你只知道PLC发出多少脉冲,至于这些脉冲是否走了这点距离,你不知道的,因为存在:丢脉冲的状况,机械的问题。

Regards
qinchenglim
级别: 论坛先锋
精华主题: 0
发帖数量: 1213 个
工控威望: 1313 点
下载积分: 3923 分
在线时间: 738(小时)
注册时间: 2009-06-09
最后登录: 2024-05-07
查看qinchenglim的 主题 / 回贴
2楼  发表于: 2009-12-30 16:19
我见过的实际应用当中都是读取PLC的寄存器(D),也就是PLC发给私服放大器的脉冲数,如果你的伺服放大器+伺服马达质量没问题,位置控制的精度还是有保证的.
你要想直接读取编码器的反馈脉冲,还要从放大器接入PLC的高速计数器(C),我曾经用松下的伺服系统做过类似的实验,这两个值是相等的(C=D),你用三菱的再做做这样的实验,看看结果怎么样.
梦飞
一心学习,只为生活。
级别: 略有小成
精华主题: 0
发帖数量: 122 个
工控威望: 294 点
下载积分: 1021 分
在线时间: 85(小时)
注册时间: 2008-11-24
最后登录: 2022-10-08
查看梦飞的 主题 / 回贴
3楼  发表于: 2009-12-30 21:29
直接用ABS读取就可以啊
读取的是伺服放大器的当前值
tianqiji
工控道路上的石子!
级别: 略有小成
精华主题: 0
发帖数量: 245 个
工控威望: 265 点
下载积分: 1019 分
在线时间: 49(小时)
注册时间: 2008-04-15
最后登录: 2021-08-31
查看tianqiji的 主题 / 回贴
4楼  发表于: 2009-12-31 19:21
引用
引用第3楼梦飞于2009-12-30 21:29发表的  :
直接用ABS读取就可以啊
读取的是伺服放大器的当前值

楼上的大哥能否说明白一点,我看说明书还是云里雾里的。
学习工控最好的网站http://www.ymmfa.com/bbs/?u=36778
丁丁
级别: 探索解密
精华主题: 0
发帖数量: 19 个
工控威望: 197 点
下载积分: 496 分
在线时间: 10(小时)
注册时间: 2007-04-20
最后登录: 2020-11-15
查看丁丁的 主题 / 回贴
5楼  发表于: 2010-01-01 20:33
谢谢大家的解答,1楼说的理论上应该是这样,但实际应用中,感觉2楼说的应该很有道理,因为伺服中不会存在像步进的失步问题。3楼说的ABS读取,看手册我理解好像不能读实时状态,只能是在伺服走完一段脉冲完成后,而读取的完成状态,不知道是不是这样
佘顺红
级别: *
精华主题: * 篇
发帖数量: * 个
工控威望: * 点
下载积分: * 分
在线时间: (小时)
注册时间: *
最后登录: *
查看佘顺红的 主题 / 回贴
6楼  发表于: 2010-01-02 08:38
当然是读C.读C 是实际位,D是给定位,当机械有故障.当产生的位置误差低于你设置误差脉冲个数时,伺服是不会报警的,我是做数控的,一般情况下,D=C