那样写的话就会少一半咯
wing 发表于 2017-2-14 11:56
那样写的话就会少一半咯
有个问题想要请教下,做电机位置环控制(电机转动,利用编码盘计数,形成计数,比如N步,达到电机来回只走N步),目前就是多少有点误差(例如20线编码盘转一圈,有19,20,21的个数),然后就想利用PID控制,但是,不知道如何建模,入手,你有做过么?
我也遇到了,跟你一样。而且我发现转一圈不是20而是80,速度大些60
164335413 发表于 2017-2-13 17:24
TB6612这个片子挺小,驱动能力也可以,外围电路还少。
我用的也是烧了2个了,英文说明说电压小于15伏就行,然后我用3节18650刚开始还行,一星期坏了2
靳靳 发表于 2017-2-16 01:34
我用的也是烧了2个了,英文说明说电压小于15伏就行,然后我用3节18650刚开始还行,一星期坏了2
尽量加上mosfet 按手册里,这样可以防止反接损坏和过流。之前平衡车上用的就是三节18650和TB6612FN,另外,和片子的质量也有关,容易损坏很有可能买到假货了。
ignore 发表于 2017-2-15 16:08
有个问题想要请教下,做电机位置环控制(电机转动,利用编码盘计数,形成计数,比如N步,达到电机来回 ...
还是这么搞比较好,计数器数值越大误差相对就少
wing 发表于 2017-2-16 17:11
还是这么搞比较好,计数器数值越大误差相对就少
还是这么搞比较好?我这种直接计数的?
靳靳 发表于 2017-2-16 01:24
我也遇到了,跟你一样。而且我发现转一圈不是20而是80,速度大些60
本来20,会跑到80?
本帖最后由 wing 于 2017-2-17 11:11 编辑
ignore 发表于 2017-2-16 17:21
还是这么搞比较好?我这种直接计数的?
我意思是中断的时候就直接计数,不要过多的逻辑处理,然后最好还是用change吧
这样的基数大一点,头伪的误差相对少
尽量不搞什么滤波算法的,信号问题由比较器电路处理,主控只做计数
wing 发表于 2017-2-17 11:09
我意思是中断的时候就直接计数,不要过多的逻辑处理,然后最好还是用change吧
这样的基数大一点,头伪的 ...
嗯,目前来说,就是这种形式,由于利用继电器控制,导致这个停止时,有个惯性误差,我就一直在想是否能通过PID来把这个误差解决了!!
我相信,就算电机断电也不会马上停的,
所以断电后编码器还会继续增加计数,
如果用的是有刷电机,并且机械负载很小(或者说非自锁结构),
那么当它正向角速度刚刚下降到0的下一个时刻可能出现负的角速度,
这状况还可能会来回发生几次,经历完这些之后电机才真正停下来.
码盘足够细密的情况下,计数器会反应的出来
尝试把每下计数的时间间隔记录下来,并且列成曲线会很有趣的
wing 发表于 2017-2-18 11:50
我相信,就算电机断电也不会马上停的,
所以断电后编码器还会继续增加计数,
嗯,那一般,如何消除这种负角速度的出现?采用驱动板控制电机是否会好点?
那个问题主要是来自机械结果的影响,
就像风扇样就算断电也不是马上停的,
驱动电路改变不了这种问题,只有机械结构上有自锁功能的才可以从源头解决问题
不过我有一个简单粗暴的方法:当控制电机的PWM信号为0的时候,直接关掉中断,计数器不再发生变化,无视所有惯性问题。
wing 发表于 2017-2-20 16:07
那个问题主要是来自机械结果的影响,
就像风扇样就算断电也不是马上停的,
驱动电路改变不了这种问题,只 ...
我就是采用你说的,断电的同时关闭计数,但实际会跑啊, 你说是不?:o
wing 发表于 2017-2-20 16:07
那个问题主要是来自机械结果的影响,
就像风扇样就算断电也不是马上停的,
驱动电路改变不了这种问题,只 ...
机械结构上的自锁功能,是那种离合器?