您现在所在的是:

机电一体化

回帖:42个,阅读:13420 [上一页] [1] [2] [3] [4] [5] [下一页]
4327
lhw982117910
文章数:2204
年度积分:49
历史总积分:4327
注册时间:2004/2/11
发站内信
发表于:2009/1/10 19:59:44
#10楼
以下是引用lixiaobai在2009-1-10 19:17:28的发言:
伺服的控制精度最小是一个脉冲,所以要精确到0.1度,就要设置为PLC每发送3600个脉冲,伺服电机转一圈。
这样,无论你想转多少角度,乘以10倍就是PLC将要发出的脉冲数。
例如要转40.1度,编程PLC发送401个脉冲就可以了
你好象没有考虑其中的传动比,不一定就是1:1啊
rocky
23805
wushulin 版主
文章数:6168
年度积分:238
历史总积分:23805
注册时间:2006/2/17
发站内信
2018论坛优秀版主
2017论坛优秀版主
2016论坛优秀版主
2015论坛优秀版主
2014论坛优秀版主
西门子PLC体验(一)
我秀我做2014
2013论坛优秀版主
秀秀我的办公桌
晒工控工具书
2012论坛优秀版主
2011国庆活动
2010年度论坛贡献奖
发表于:2009/1/10 21:35:49
#11楼
以下是引用lhw982117910在2009-1-10 19:59:44的发言:
以下是引用lixiaobai在2009-1-10 19:17:28的发言:
伺服的控制精度最小是一个脉冲,所以要精确到0.1度,就要设置为PLC每发送3600个脉冲,伺服电机转一圈。
 这样,无论你想转多少角度,乘以10倍就是PLC将要发出的脉冲数。
 例如要转40.1度,编程PLC发送401个脉冲就可以了
你好象没有考虑其中的传动比,不一定就是1:1啊
所以这种算法不对,这种算法不可能把360度分完,因为最终的和要等于360度,这个算法才是正确。现在不是分成一分,而要求一圈
汽车车桥生产在线检测设备;其它大批量零件生产过程检测,
承接:非标自动化设备设计、旧设备改良与维修; 单独非标项目合作。
4327
lhw982117910
文章数:2204
年度积分:49
历史总积分:4327
注册时间:2004/2/11
发站内信
发表于:2009/1/10 22:11:52
#12楼
以下是引用wushulin在2009-1-10 21:35:49的发言:
以下是引用lhw982117910在2009-1-10 19:59:44的发言:
以下是引用lixiaobai在2009-1-10 19:17:28的发言:
 伺服的控制精度最小是一个脉冲,所以要精确到0.1度,就要设置为PLC每发送3600个脉冲,伺服电机转一圈。
  这样,无论你想转多少角度,乘以10倍就是PLC将要发出的脉冲数。
  例如要转40.1度,编程PLC发送401个脉冲就可以了
 
你好象没有考虑其中的传动比,不一定就是1:1啊
所以这种算法不对,这种算法不可能把360度分完,因为最终的和要等于360度,这个算法才是正确。现在不是分成一分,而要求一圈
我觉得这种算法若最终的和等于360度的整数倍也可以.而这又不太可能,除非分成10份.
rocky
23805
wushulin 版主
文章数:6168
年度积分:238
历史总积分:23805
注册时间:2006/2/17
发站内信
2018论坛优秀版主
2017论坛优秀版主
2016论坛优秀版主
2015论坛优秀版主
2014论坛优秀版主
西门子PLC体验(一)
我秀我做2014
2013论坛优秀版主
秀秀我的办公桌
晒工控工具书
2012论坛优秀版主
2011国庆活动
2010年度论坛贡献奖
发表于:2009/1/10 22:39:30
#13楼
对,我要说的是最大的问题是余数问题,可以试想一想,试算一算


到这里了,我可以先做一个说明,我曾经做了一个分60等份的,并且每个角度任意独立计算,自动等于360度。这个问题是我先在本论坛版主群里面和几位版主一起讨论过,讨论结果,先买关子了。

[此贴子已经被作者于2009-1-10 22:50:35编辑过]
汽车车桥生产在线检测设备;其它大批量零件生产过程检测,
承接:非标自动化设备设计、旧设备改良与维修; 单独非标项目合作。
4327
lhw982117910
文章数:2204
年度积分:49
历史总积分:4327
注册时间:2004/2/11
发站内信
发表于:2009/1/10 22:43:43
#14楼
好的,让我想想该怎么算,不好意思,我还要翻一下书,近两天搞出来.
rocky
12655
lixiaobai
文章数:7781
年度积分:50
历史总积分:12655
注册时间:2006/4/5
发站内信
08年最佳博客奖
发表于:2009/1/11 14:07:00
#15楼
看的我有点糊涂了,我的设备就是这么做的啊,怎么不行了?没看懂
如果一圈要分成60等分,那每一份就是60个脉冲。如果每一分独立设置,那就最后一份=3600个脉冲减去之前的59份的和好了。
我认为就这么简单,可能是没看明白这个题目的意思吧
说说
4327
lhw982117910
文章数:2204
年度积分:49
历史总积分:4327
注册时间:2004/2/11
发站内信
发表于:2009/1/11 21:00:24
#16楼
经过计算,余数的问题我认为是这样的,按你说的分60等份,算得第一等份所需脉冲个数为41.7个(四舍五入后且精确到0.1的话),第二等份为41.3(四舍五入后且精确到0.1的话),而第三等份则刚好为整数42,依次类推,结果肯定是所有等份的脉冲数加起来刚好等于工作台转360度所需的脉冲个数.其实在程序中,我认为用四舍五入将41.7变成42,41.3变成41,而42四舍五入还是42.....
再,不管分多少等份,使工作台旋转完成一周所需的脉冲个数肯定是整数,那么,不论每个角度独立计算也好,不独立计算也好,所有等份的计算数值之和就是360度.


Wushulin---本贴提示:机器没有四舍五入的说法。PLC或CNC都只有整数。也就是所有小数都是丢掉了的
[此贴子已经被wushulin于2009-1-11 21:08:21编辑过]
rocky
23805
wushulin 版主
文章数:6168
年度积分:238
历史总积分:23805
注册时间:2006/2/17
发站内信
2018论坛优秀版主
2017论坛优秀版主
2016论坛优秀版主
2015论坛优秀版主
2014论坛优秀版主
西门子PLC体验(一)
我秀我做2014
2013论坛优秀版主
秀秀我的办公桌
晒工控工具书
2012论坛优秀版主
2011国庆活动
2010年度论坛贡献奖
发表于:2009/1/11 21:02:23
#17楼
楼上:
我写一个例子:
用步进电机吧,步进电机每360度的脉冲数为400、500、600、800、1000-----如此细分。那就是说每一度为400/360=1.11111111.按你说的这种算法,乘上10倍。这样算下来,还是除不尽。如果我把360度分为13分,每份就应该是360/13=27.6923----。按这个算式,就算是放大100倍也没用。特别是最后那一个分度,所有的余数及误差全部累积到此了。
算一下是不是这样?
再一个重要的提示:脉冲是没有四舍五入的。所有小数都是机器不认的


[此贴子已经被作者于2009-1-11 21:05:15编辑过]
汽车车桥生产在线检测设备;其它大批量零件生产过程检测,
承接:非标自动化设备设计、旧设备改良与维修; 单独非标项目合作。
1113
huaishu0112
文章数:53
年度积分:50
历史总积分:1113
注册时间:2008/5/28
发站内信
发表于:2009/1/11 21:19:38
#18楼
我大概理解楼主的意思了,我讲讲我的思路,看是否正确。
设定3600个脉冲一圈,也就一个脉冲0.1度;n等份,m特殊设定等份。
3600/(n-m)=k(常数)+d(小数),则除去特殊设定等份,需要对X1,X2,...X(n-m)个数增加余数。
若2×d>=1,则X2=K+1,X4=K+1,...X(n-m)=3600-(X1+X2+...Xn);
若3×d>=1,则X3=K+1,X6=K+1,...X(n-m)=3600-(X1+X2+...Xn);
.
.
依次判断9×d>=1;
这样算应该是没什么问题,可编程就麻烦了


wushulin---评论:你的算法只说了独立编程计算每个分度的其中一点,实际算法还是不对。加辛苦分了,加2分,请继续努力。



[此贴子已经被wushulin于2009-1-11 21:37:15编辑过]
什么样的性格该选择什么样的生活!
4327
lhw982117910
文章数:2204
年度积分:49
历史总积分:4327
注册时间:2004/2/11
发站内信
发表于:2009/1/11 21:30:50
#19楼
说的有道理,确实是这样的,其实问题的难点就在累积误差的处理上.还是继续探究一下.谢谢wu工的重要提示.
rocky

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

78.0005