小混hun 发表于 2013-12-5 20:00:02

步进电机位置闭环实时补偿怎么处理?

本帖最后由 小混hun 于 2013-12-5 23:30 编辑

之前做的步进电机控制都是开环的,加速过程使用了S曲线加速算法,位置定点也是采用脉冲计数来实现的。效果还不错!
现在要加上编码器,做成闭环,在论坛学习了几天,有个大概的思路,但不是很明了:运动过程中,定时去采样,计算偏差,在下一个采样去补偿,但这样PID算法就没有用到!
老板要求位置闭环中用PID算法!我是这样想的,通过PID计算输出的值是一个慢慢接近目标值的,有可能还在目标值左右浮动,这样位置控制就不好处理!是不是用了PID算法,加速曲线算法就不能使用了?
附上一个伺服位置闭环思路:

outt60777 发表于 2013-12-5 20:19:35

同问,同疑惑中。往高手赐教。

error_dan 发表于 2013-12-5 21:02:43

一个是位置式PID一个是增量式PID,不一样的

mikal 发表于 2013-12-5 22:07:03

PID 是一种算法,适用于任何控制系统,器控制对象分很多很多。比如您说的位置,速度,力矩等等都可以用独立的pid来控制!

小混hun 发表于 2013-12-5 23:10:51

本帖最后由 小混hun 于 2013-12-5 23:17 编辑

error_dan 发表于 2013-12-5 21:02
一个是位置式PID一个是增量式PID,不一样的

那位置闭环的PID算法选择哪种?

hadio 发表于 2013-12-5 23:15:54

这个涉及到闭环步进的核心技术,一般很少人会透露的。

检测到步数偏差再进行补偿是不行的,电机会一直处于失步状态并产生啸叫声,
正确的做法是补偿电流……

小混hun 发表于 2013-12-5 23:21:18

hadio 发表于 2013-12-5 23:15
这个涉及到闭环步进的核心技术,一般很少人会透露的。

检测到步数偏差再进行补偿是不行的,电机会一直处于 ...

难怪,找了几天资料了,没一点头绪,电流的步进怎么调呢?因为我现在用的是步进的驱动芯片,给脉冲就跑的那种,电流,细分都已经做好了!
这里有个伺服的思路:

小混hun 发表于 2013-12-5 23:25:51

outt60777 发表于 2013-12-5 20:19
同问,同疑惑中。往高手赐教。

老师,你也在做!
有好的思路么?

mikal 发表于 2013-12-5 23:29:27

pid普通算法都是公开的,很简单!没有什么高深的,但是pid参数的调校是经验值,这个确实不太容易找到!
看来是一些没有学控制论的人在做控制算法,呵呵!

小混hun 发表于 2013-12-5 23:34:48

mikal 发表于 2013-12-5 23:29
pid普通算法都是公开的,很简单!没有什么高深的,但是pid参数的调校是经验值,这个确实不太容易找到!
看 ...

那确实,专科学历,出来后才开始学C,误入工控行业!
还望少 呵呵
因为 呵呵 专家研究过是母猪发情时的叫声。

mikal 发表于 2013-12-5 23:38:42

小混hun 发表于 2013-12-5 23:34
那确实,专科学历,出来后才开始学C,误入工控行业!
还望少 呵呵
因为 呵呵 专家研究过是母猪发情时的 ...

嘿嘿,因为专家基本都是非人类嘛!

mikal 发表于 2013-12-5 23:46:05

小混hun 发表于 2013-12-5 23:34
那确实,专科学历,出来后才开始学C,误入工控行业!
还望少 呵呵
因为 呵呵 专家研究过是母猪发情时的 ...

小朋友,不要多想啊,没有其他意思哦!

其实,你首先要了解下编码器的作用,然后再看看你的位置控制,

结合编码器,能给你的位置控制带来什么?

无非就是编码器提供了一个基准。让你知道步进电机的具体位置,然后比对你的控制步数,

从而调整位置控制,目标是编码器的位置和你的控制的位置一样,或者是无限逼近!

小混hun 发表于 2013-12-6 11:32:13

mikal 发表于 2013-12-5 23:46
小朋友,不要多想啊,没有其他意思哦!

其实,你首先要了解下编码器的作用,然后再看看你的位置控制,


感谢回复这么多字!
原理倒是明白,关键是通过PID调整后,执行机构怎么执行!

djkc 发表于 2013-12-8 00:00:27

我是位置PID速度PID同时来,效果一级棒

hzband 发表于 2013-12-8 15:26:16

步进系统是唯一的一个不需反馈就具备位置控制能力的运动技术,在不过载或超过电机限速时,是不会失步或丢步的,也就是无需实时补偿。
但步进电机是开环的,对过载产生的堵转时,就失去原来的位置,无法确认位置。加闭环主要改变步进开环下的过载产生的堵转和提高转速性能。

http://www.tudou.com/programs/view/8JpbT91FfE8/

semonpic 发表于 2013-12-8 17:30:50

如果你用的是买的成品驱动器,做闭环就是鸡肋。如果你是自己做驱动器。可通过电流环和速度环,位置环来做。这也就是伺服了。

小混hun 发表于 2013-12-9 20:20:41

semonpic 发表于 2013-12-8 17:30
如果你用的是买的成品驱动器,做闭环就是鸡肋。如果你是自己做驱动器。可通过电流环和速度环,位置环来做。 ...

是在自己做,现在考虑三个环一起做

小混hun 发表于 2013-12-9 20:22:19

hzband 发表于 2013-12-8 15:26
步进系统是唯一的一个不需反馈就具备位置控制能力的运动技术,在不过载或超过电机限速时,是不会失步或丢步 ...

我的现在是带了负载使用加减速算法后确实不不丢步,但正如你说堵转后就不好处理了,所以还是加入闭环

小混hun 发表于 2013-12-9 20:23:13

djkc 发表于 2013-12-8 00:00
我是位置PID速度PID同时来,效果一级棒

位置环,速度环,电流环都做了吗?能否指导指导?

djkc 发表于 2013-12-9 20:24:52

小混hun 发表于 2013-12-9 20:23
位置环,速度环,电流环都做了吗?能否指导指导?

没有做电流环,就速度和位置

小混hun 发表于 2013-12-9 20:29:41

djkc 发表于 2013-12-9 20:24
没有做电流环,就速度和位置

那也行!
我今天才弄明白,位置环输出的是速度,给速度环,速度环输出电流,给电流环。

hzband 发表于 2013-12-10 10:40:38

先弄清楚问题所在,步进电机在限速内是不会失步的,只有超出限速时会堵转和失步,或会过冲失位置同步。看你的说明是解决提高转速时丢步现象,而堵转还没解决。
步进电机不需电流环,驱动器是恒流的,但最好加温度检测。
如果用单片机来处理编码器,很多问题无法解决,主要I/O口速度不够。

fanwei 发表于 2014-9-7 09:59:05

兄弟做的怎样了?方便的话,交流交流。

huanger 发表于 2014-9-8 17:45:41

本人也一直想了解这方面的知识,希望跟跟大家一直学习进步。

wq_601840968 发表于 2014-9-25 09:41:18

小混hun 发表于 2013-12-9 20:29
那也行!
我今天才弄明白,位置环输出的是速度,给速度环,速度环输出电流,给电流环。 ...

这三个环到底是怎么工作的 楼主能否解释一下,最近也在搞这东西,不大明白

end2000 发表于 2014-10-12 22:49:41

步进电机。

wq_601840968 发表于 2014-10-13 08:54:34

楼主,脉冲计数是如何实现的,在中断中么,那样脉冲频率快的话,是不是就不行了
页: [1]
查看完整版本: 步进电机位置闭环实时补偿怎么处理?