首页 上一页 1 2 下一页 尾页

用运动控制板来做位置控制 点击:1205 | 回复:21



liu443

    
发表于:2012-06-26 19:49:55
楼主

大家好! 我现在有一个应用,现在驱动器工作在速度模式(因为应用环境的问题必须工作在速度模式)

我自己做了一块运动控制板,想用它来做位置控制,根据给定的位置,让运动控制板将每时刻的速度

根据S曲线算法解算出来,然后发送给驱动器,我想通过这样来实现精确的位置控制,但是不知道怎么

去实现它,难道用测量码盘来进行闭环控制? 具体怎么实现呢? 谢谢大家!!!




叫我小白

  • 精华:0帖
  • 求助:0帖
  • 帖子:23帖 | 1559回
  • 年度积分:0
  • 历史总积分:3124
  • 注册:2006年6月08日
发表于:2012-06-27 05:56:45
1楼

运动控制器输出模拟量给驱动器,从而控制电机转速,驱动器会反馈脉冲作为位置反馈. 这样就形成了闭环.

当你控制走S曲线的时候,先计算出每时刻的目标位置来,与实际位置进行PID计算,发送模拟量给驱动器.

刘岩利

  • [版主]
  • 精华:2帖
  • 求助:0帖
  • 帖子:20帖 | 8248回
  • 年度积分:0
  • 历史总积分:28866
  • 注册:2005年3月09日
发表于:2012-06-27 07:20:42
2楼

不要说 难道,是必须做闭环控制

 

统一

  • 精华:1帖
  • 求助:1帖
  • 帖子:41帖 | 2186回
  • 年度积分:0
  • 历史总积分:2880
  • 注册:2012年3月02日
发表于:2012-06-27 07:29:58
3楼
闭环式必须滴,不然控制一定都不准确

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2012-06-27 15:55:08
4楼
回复内容:
对:叫我小白关于 运动控制器输出模拟量给驱动器,从而控制电机转速,驱动器会反馈脉冲作为位置反馈. 这样就形成了闭环.当你控制走S曲线的时候,先计算出每时刻的目标位置来,与实际位置进行PID计算,发送模拟量给驱动器. 内容的回复:

谢谢 我现在不是通过模拟量来控制的 直接将速度指令用can总线发送过去 但是还有一个问题就是我经过PID计算后,就要调整给驱动器的速度指令,这就有个问题,调整后的速度指令还符合S曲线吗?

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2012-06-27 16:07:48
5楼
回复内容:
对:统一关于 闭环式必须滴,不然控制一定都不准确 内容的回复:

嗯 是的 我今天试验过 直接用s曲线输出 每次走的距离是固定的 但是就是不精确 不是理论计算出来的距离

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2012-06-27 16:08:58
6楼
回复内容:
对:刘岩利关于 不要说 难道,是必须做闭环控制  内容的回复:

嗯 是的 我今天试验过 直接用s曲线输出 每次走的距离是固定的 但是就是不精确 不是理论计算出来的距离

刘岩利

  • [版主]
  • 精华:2帖
  • 求助:0帖
  • 帖子:20帖 | 8248回
  • 年度积分:0
  • 历史总积分:28866
  • 注册:2005年3月09日
发表于:2012-06-29 06:09:49
7楼

任何理论上的计算,再经过数字化之后,一定是会有误差的。

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2012-07-02 22:47:17
8楼
请大家帮我想想 经过PID计算后,就要调整给驱动器的速度指令,这就有个问题,调整后的速度指令还符合S曲线吗?

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2012-07-06 19:45:44
9楼

顶起来呀 请大家多多指教~

刘岩利

  • [版主]
  • 精华:2帖
  • 求助:0帖
  • 帖子:20帖 | 8248回
  • 年度积分:0
  • 历史总积分:28866
  • 注册:2005年3月09日
发表于:2012-07-09 18:01:04
10楼

闭环以后,您给出的指令很可能在细节上偏离了标准曲线。这样才能保证实际速度曲线更接近标准曲线。

另外,如果开环的一致性足够好,是否可以考虑在规划中补偿位置偏差?

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2012-08-30 16:38:33
11楼

回复内容:
对:刘岩利关于闭环以后,您给出的指令很可能在细节上偏离了标准曲线。这样才能保证实际速度曲线更接近标准曲线。另外,如果开环的一致性足够好,是否可以考虑在规划中补偿位置偏差?内容的回复:



不好意思 最近有些忙 我估计闭环以后 经过pid给出的速度指令就不能满足S曲线了  在我的应用环境中 开环肯定不行的 不知道像beckhoff的驱动器 他们怎么能走那么精确 而且还可以走任意曲线 您有相关的资料不? 我在google上找了好久也没找到

刘岩利

  • [版主]
  • 精华:2帖
  • 求助:0帖
  • 帖子:20帖 | 8248回
  • 年度积分:0
  • 历史总积分:28866
  • 注册:2005年3月09日
发表于:2012-08-30 17:48:54
12楼

 我估计闭环以后 经过pid给出的速度指令就不能满足S曲线了
细节上肯定不完美,但是大致应该差不多。实际运动状态和指令之间在细节上一定有差异。您关注的是什么?您想要的是一个完美的指令曲线而不完美的实际动作,还是相反?

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2012-09-03 11:24:58
13楼
回复内容:
对:刘岩利关于 我估计闭环以后 经过pid给出的速度指令就不能满足S曲线了细节上肯定不完美,但是大致应该差不多。实际运动状态和指令之间在细节上一定有差异。您关注的是什么?您想要的是一个完美的指令曲线而不完美的实际动作,还是相反?内容的回复:


谢谢您的回复,我不清楚经过pid的速度值怎么去符合s曲线,难道是某时刻s曲线的值去叠加pid计算出的值吗? 这个是现在搞不明白的 我现在要求只要整个运动过程中速度不突变就行(s曲线就是不突变的) ,还有就是能不能提前计算一条s曲线 然后根据实际误差去调整它,我估计这个做不到

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2012-09-03 12:04:44
14楼
回复内容:
对:刘岩利关于 我估计闭环以后 经过pid给出的速度指令就不能满足S曲线了细节上肯定不完美,但是大致应该差不多。实际运动状态和指令之间在细节上一定有差异。您关注的是什么?您想要的是一个完美的指令曲线而不完美的实际动作,还是相反?内容的回复:


我刚才又想了一下是不是这样,比如我从当前点走100米到一点, 然后先用位置差经过pid,解算出一个速度Vmax,然后将得到的这个速度Vmax放到s速度曲线生成器里面,不对不对,想错了,我走一定的距离,s速度曲线是提前算出来的,不能这样做

谢谢落

  • 精华:0帖
  • 求助:0帖
  • 帖子:20帖 | 81回
  • 年度积分:0
  • 历史总积分:248
  • 注册:2005年10月13日
发表于:2012-09-03 22:26:44
15楼

1、确定你的定位位移

2、确定你的S曲线等效加减速

3、根据你的S曲线等效加减速算出加速区位移,匀速区位移,减速区位移

4、根据3的结果算出每个PID周期对应位移值

5、根据3,4的结果计算出每个PID周期对应速度值

6、以4,5的结果作为标准S曲线值进行PID调节

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2012-09-04 16:09:00
16楼
回复内容:
对:谢谢落关于1、确定你的定位位移2、确定你的S曲线等效加减速3、根据你的S曲线等效加减速算出加速区位移,匀速区位移,减速区位移4、根据3的结果算出每个PID周期对应位移值5、根据3,4的结果计算出每个PID周期对应速度值6、以4,5的结果作为标准S曲线值进行PID调节内容的回复:


多谢 我仔细研究一下

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2013-03-08 13:47:47
17楼

这是我做点对点位置控制的波形图,红线为标准S曲线,蓝线为pid调制后的曲线

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2013-03-08 13:54:17
18楼

现在有个问题就是精度不够,比如设置加加速度为200rap,最大速度为1000rap,行走的距离为10000rap,最后误差为几十厘米。我的PID调制周期为10ms。

我的增量PID算法:ptpVar.Vout = piduk + tempV;// + sFF.FFValue;
                    piduk += tempV;

                    ptpVar.Vout :为实际输出值

                    piduk :为累计值

                    tempV:为增量PID计算的值

想请问您一下有没有什么好的提高精度的算法,能给我您的QQ吗? 谢谢!!! 我的QQ:284985160

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2013-03-08 13:58:41
19楼
请多多指教~~ 谢谢·~~~

liu443

  • 精华:0帖
  • 求助:1帖
  • 帖子:4帖 | 18回
  • 年度积分:0
  • 历史总积分:133
  • 注册:2012年6月26日
发表于:2013-06-05 20:59:15
20楼

回复内容:

对: 刘岩利  闭环以后,您给出的指令很可能在细节上偏离了标准曲线。这... 内容的回复!


刘老师,  我现在给伺服电机发送脉冲,10ms发送一次,因为用的arm可以准确发送脉冲个数,想请问控制电机的转速是改变pwm的频率,还是脉冲个数?改变pwm频率,运动比较流畅,对于发送脉冲个数,因为周期可以变,比如发送10ms中发送10个脉冲,这10个脉冲可以在5ms之内发送完,这样后5ms电机是不动的,运动不平顺,但是这种可以准确定位,而改变pwm频率不能准确定位,所以想请问,改变pwm频率怎样准确定位?

SSI ļʱ
首页 上一页 1 2 下一页 尾页