作者wisdom ()
看板Mechanical
标题Re: [心得] PLC 过往工作及最近面试
时间Mon Oct 9 14:07:11 2017
: 推 syatoyan: 诚心发问 为什麽电子齿轮比害人不浅? 10/09 05:46
: → syatoyan: 靠调整电子齿轮比 可以藉由较高的回授脉波数 得到更精准 10/09 05:47
: → syatoyan: 的误差 不是可以做更精准的误差修正吗? 10/09 05:48
: → syatoyan: 还是说 那样得到的误差值其实是假的 实际误差还是以 10/09 05:49
: → syatoyan: 编码器的规格为基准? 10/09 05:50
: → syatoyan: 可是使用者却认为有电子齿轮比 所以我只要以最低阶的 10/09 05:51
: → syatoyan: 所以造成 只要使用最低阶的编码器 + 电子齿轮比设定 10/09 05:54
: → syatoyan: 也可以做到误差0.1mm的精准控制 这种错觉? 10/09 05:54
: → syatoyan: 弱弱的推测是不是这样的现象 所以电子齿轮比不好? 10/09 05:55
你的观念有误,这是我说电子齿轮比害人不浅的原因之一
电子齿轮比的存在原因
是因为编码器解析度越来越高,使用者需求的马达转速增加
但脉波发送/接收模组的反应速度跟不上造成的
我们举个例子,为求容易理解 & 计算方便,我用非真实数据来解释
假设编码器解析度是 360 inc/rev,意即马达每转一度,编码器可以输出一个讯号
(这里我不用"脉波",是因为很多人又会被编码器脉波跟控制脉波搞混)
换句话说,编码器的解析度是 1度,那麽这个伺服系统能达到的理论控制精度也就是1度
理论控制精度有两个函义
1. 你能控制马达往前/後转1度。
2. 定位精度极限理论上是 +- 1度
接下来,我们要把脉波控制跟编码器"脉波"混在一起讲了
理论上,以pulse chain作为控制命令,一个控制脉波 = 一个编码器脉波
也就是说,驱动器接收到一个脉波,会控制马达转一个编码器单位
以这里的例子,就是转1度。
请注意,在这里的例子里,你是无法控制马达转0.5度或任何小於1度的角度
假设你希望马达每秒转10圈(10rps = 600rpm)
意即你要控制脉波输出10 x 360 = 3600 Hz
再假设,你使用的脉波输出模组,最高的输出频率只有2k Hz(先别管哪来这麽烂的模组)
换句话说,在这套系统里,你无法得到你要的目标转速
於是聪明的制造商,就引入了电子齿轮比这个参数
电子齿轮比让控制脉波 = 编码器脉波 x 电子齿轮比
换句话说,如果电子齿轮比设成 2
一个控制脉波,驱动器会让马达转 2度
这样的话,只要1800Hz的脉波频率,就能让马达达到600rpm的转速
不改变任何硬体条件的前提下,立刻解决这个问题。
请留意,这才是电子齿轮比最初设计出来的初衷,
只是为了解决脉波产生/接收模组的反应速度不够快的问题而已。
而使用电子齿轮比会造成一个根本问题,就是你的控制精度直接下降
以上面的例子,你最小只能控制马达一次转2度,控制精度会下降
意即你只能控制马达走0、2、4..... 这些角度,命令无法给1、3、5.....这些度数
(当然定位精度不会改变,一样是 +- 1度。)
所以现在所有电子齿轮比的延伸应用
包含用来将减速比、螺杆导程计算後导入电子齿轮比
让PLC的控制单位 = 机构单位,这种作法看似让应用变得方便了
实际上并不是正确的使用。
而业界不仅是大教特教这种用法,还出书教你怎麽算
几乎工控人都把这套方法当成圣经不容挑战了....
当然很多人会说,编码器解析度这麽高,换算到螺杆精度後,
一个编码器解析度可能是1nm,我只需要1um的控制就好,
何必管设定电子齿轮比後造成的控制精度下降? 不影响使用啊
这我同意,这也是电子齿轮比在应用上,这麽多年来也没有人有意见的原因。
不过我说的害人不浅,不完全是应用上不合理,其实稍微不那麽低阶的驱动器
都可以让你设定减速比跟螺杆导程,驱动器内部会自动帮你换算
但因为根深蒂固长久以来的使用习惯,太多人已经宁愿就他原本那套电子齿轮比
算好丢一个参数进去就好,也不愿意去使用正确的参数设定。此其一
再者是,控制脉波跟编码器回授脉波,本质上两者是没有关系的
只是在控制上,一开始为求最大控制精度
自然会让控制脉波跟回授脉波 = 1:1
电子齿轮比的引入,造成为数不少的工控人对这两者产生误解
错误观念一久,就很难改了。
很多人真的以为,控制命令(脉波),跟编码器回授(脉波),两者一定要有一个比例关系
当使用到比较进阶的系统时,反而一直纠结在控制命令的问题上
结论
1. 电子齿轮比的使用会导致控制精度下降
2. 没搞懂电子齿轮比的使用者一大票
3. 搞懂但被电子齿轮比这个观念限制住的使用者又是一大票
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.235.101.106
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Mechanical/M.1507529235.A.4C0.html
1F:推 syatoyan: 原来如此,如果用EntherCAT来应用,似乎就都不存在这些 10/09 18:26
2F:→ syatoyan: 问题,不过如果还是需要pulse command,那麽高速运转的 10/09 18:28
3F:→ syatoyan: 精准度下降似乎是无法避免的结论。 10/09 18:29
更精确一点来说,通讯型的伺服(不丢pulse),就可以完全避免掉这个问题
也完全不需要有一个"电子齿轮比"这个参数
通讯不是只有EtherCat而已,通讯方法非常多
Ethernet base的有EtherCat,Sercos, ProFiNet, Ethernet IP, EtherNet TCP/IP...
非乙太基础的更多,Can Bus , ProFi Bus , ModBus , 标准的串列阜通讯也有人在用..
换句话说,只要可以直接"沟通"的驱动器,就不受限在Pulse command了
IEEE 1394、USB都能拿来通...
再重申一次,其实就应用上来说,要高速运转又要高控制精度的应用是非常少见的
一般的PTP 应用,很少会拉到非常高的速度。需要高速的应用,也很少需要高定位精度
所以电子齿轮比在实际应用上,并不会真的造成什麽问题
(真的到高阶应用就不会用这麽低阶的伺服了)
而真正的问题,就在於电子齿轮比并不会造成问题
所以使用者就不认为这有什麽问题,而从根本上不去理解这个东西到底是干嘛用的
然後在一知半解的情况下,乱七八糟的观念累积起来
这才是真正的问题。
※ 编辑: wisdom (114.26.81.36), 10/09/2017 20:46:34
4F:推 ej04ej04: 由内文来看,似乎是使用电子齿轮比之前尚未了解其定义 10/09 20:56
5F:→ ej04ej04: 所产生之问题,感谢解释 10/09 20:56
6F:推 annzheng: 谢谢您 10/10 22:39
7F:→ yuleen123: 欧系的伺服就比较会把这些观念分清楚 10/10 23:35
8F:→ yuleen123: 控制命令解析度, 编码器解析度, 机械齿轮比, 螺杆导程 10/10 23:36
9F:→ yuleen123: 都是有独立的参数可以设定 10/10 23:36
10F:推 juijuijuijui: 有学有推,大部分应用的确没那麽讲就,做了5年也都 10/11 08:18
11F:→ juijuijuijui: 用autotune马达,只有几次特别应用(追随和同步) 10/11 08:18
12F:→ juijuijuijui: 找原厂调参数 10/11 08:18
13F:→ Kayusumi: 还有安川的MECHATRALINK阿 10/12 12:40
14F:推 s3f4e9g6aa7: 长知识 10/12 18:51
15F:推 s1000: 推推 10/15 12:27
16F:推 AJE: 多谢分享 10/15 15:15
17F:推 b2481: 长知识了! 以前一直以为是为了减速比或螺杆导程而设计的 10/15 21:24
18F:→ b2481: 原来是控制器太慢造成的 10/15 21:25
19F:推 b2481: 请问原PO,通讯型的伺服若还有电子齿轮比的功能,不就很怪吗? 10/15 21:28
20F:→ wisdom: 所以纯通讯型的伺服就不会有这个参数了。 10/16 00:02
21F:推 duser: 请问原po 这些资讯是在哪里看到的 10/16 10:05
22F:推 duser: 我看了伺服的说明书,并没有写为何要有电子齿轮这功能 10/16 10:07
23F:→ Kayusumi: 还是有啦 10/16 17:08
25F:→ yuleen123: 伺服的说明书只会跟你说参数要如何用 10/16 19:56
26F:→ yuleen123: 很少会说到参数是如何来的, 这要靠经验或学识自己体会 10/16 19:57
27F:推 duser: 如果是什麽波德图什麽增益还可以从以前学校的理论找到答案 10/16 21:06
28F:→ duser: 电子齿轮学校就没教了 10/16 21:07
29F:→ Kayusumi: 学校的确没教, 刚开始就是接触通讯型的, 都把这当作物理 10/17 10:08
30F:→ Kayusumi: 意义的转换而已XD 10/17 10:08