搜索
bottom↓
回复: 48

直流伺服---进行中

[复制链接]

出0入0汤圆

发表于 2012-8-9 23:51:46 | 显示全部楼层 |阅读模式
本帖最后由 colinzhao 于 2012-8-10 00:01 编辑

最新手痒,想试下直流伺服好不好做,做一半,先上图

35V的钽电容爆掉了一个,手上没有更高耐压的钽电容,就用50V的电解电容算了。
用的IR2110驱动IRF3205,输入30V折腾了一下,还挺坚固的。还有,上电后应该先让下管导通一下,给自举电容冲下电。
控制用的stm32,电机的编码器还没接上去。编码器是1000先增量试。
对了,其实双面洞洞板没有单面的好用。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2012-8-10 09:25:51 来自手机 | 显示全部楼层
直流私服不是说很差吗

出0入98汤圆

发表于 2012-8-10 09:37:09 | 显示全部楼层
永磁的还是感应的

我常看我们实验室的人做

出0入0汤圆

 楼主| 发表于 2012-8-10 16:53:00 | 显示全部楼层
电机是安川的永磁四刷电机。

出0入0汤圆

发表于 2012-8-15 11:50:02 | 显示全部楼层
这么巧,我也正在玩,也是用这个电机,这个是正弦波的编码器,不知道如何转正交的信号

出0入0汤圆

 楼主| 发表于 2012-9-10 23:18:44 | 显示全部楼层
本帖最后由 colinzhao 于 2012-9-11 00:05 编辑

已经动起来,花了我两天时间写程序,程序还需要大工程量的去完善,上个视频哈!!
感觉STM32做直流伺服还是可以的,资源够多,做起来感觉还算顺畅,要什么有什么的样子!!!
还没有写通信接口与ADC,后面再把这些加上,估计就有点应用价值了。

http://player.youku.com/player.php/sid/XNDQ4OTgxMTY4/v.swf

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入4汤圆

发表于 2012-9-10 23:35:59 | 显示全部楼层
做出来容易,做好不容易.
要在上海可帮你测试.

出0入0汤圆

 楼主| 发表于 2012-9-10 23:56:15 | 显示全部楼层
MeiYaLaoHu 发表于 2012-9-10 23:35
做出来容易,做好不容易.
要在上海可帮你测试.

请教一下MeiYaLaoHu,直流伺服通常的指标是什么呢!

出0入0汤圆

发表于 2012-9-11 00:52:24 来自手机 | 显示全部楼层
请问直流电机需要什么样的电机呢。

出0入0汤圆

发表于 2012-9-11 00:54:55 来自手机 | 显示全部楼层
colinzhao 发表于 2012-9-10 23:56
请教一下MeiYaLaoHu,直流伺服通常的指标是什么呢!

既然是精确位置控制机构无外乎力矩,角度,加减速性能,发热量,转速。能达到什么样的水准。

出0入0汤圆

发表于 2012-9-11 01:08:35 | 显示全部楼层
求楼主头像人物出处。。。。。。。。。。。。

出0入0汤圆

 楼主| 发表于 2012-9-11 09:45:44 | 显示全部楼层

出15入186汤圆

发表于 2012-9-11 10:11:46 | 显示全部楼层
直流伺服用H桥驱动就行了么?
然后方向+PWM 是这样么,楼主?

出0入0汤圆

 楼主| 发表于 2012-9-11 10:13:57 | 显示全部楼层
yuyu87 发表于 2012-9-11 10:11
直流伺服用H桥驱动就行了么?
然后方向+PWM 是这样么,楼主?

是的,我用的是有刷直流。

出0入4汤圆

发表于 2012-9-11 21:04:23 | 显示全部楼层
现在做经济型伺服驱动器(零售价400-500元)测试,为公司生产的电机配套。
要求转速3000-5000每分钟,运行平稳不丢步,锁定时无明显抖动。
测了不少国产的都达不到要求。

出0入0汤圆

 楼主| 发表于 2012-9-12 16:42:10 | 显示全部楼层
MeiYaLaoHu 发表于 2012-9-11 21:04
现在做经济型伺服驱动器(零售价400-500元)测试,为公司生产的电机配套。
要求转速3000-5000每分钟,运行平稳 ...

400-500是直流的还是交流的呢,若是交流的话,可能够呛。
交流伺服算法比直复杂很多,因而必须用高端主控,计算能力需要达到350MIPS以上吧,除了主控,其他的硬件成本也相较直流的高出不少咯。
若应用比较有针对性的话,比较注重某一性能,而其他性能可以相对减弱的话,应该还是搞得定的。

出0入4汤圆

发表于 2012-9-12 21:14:21 | 显示全部楼层
colinzhao 发表于 2012-9-12 16:42
400-500是直流的还是交流的呢,若是交流的话,可能够呛。
交流伺服算法比直复杂很多,因而必须用高端主控 ...

直流有刷、直流无刷。配1000线增量编码器。4000个脉冲转一圈。
用途:喷绘机Y轴扫描电机。(带动喷头来回移动)
头像被屏蔽

出0入0汤圆

发表于 2012-9-12 21:19:08 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

 楼主| 发表于 2012-9-12 23:54:15 | 显示全部楼层
MeiYaLaoHu 发表于 2012-9-12 21:14
直流有刷、直流无刷。配1000线增量编码器。4000个脉冲转一圈。
用途:喷绘机Y轴扫描电机。(带动喷头来回 ...

这个我觉得可能应该参考一下喷墨打印机,喷墨打印机字车并不是伺服驱动的,是开环的,而通传感器只是给喷头提供触发信号而已哈。

出0入0汤圆

 楼主| 发表于 2012-9-13 00:36:02 | 显示全部楼层
顺便发个几乎是史上最简单的PID C语言源码,相校比网上流行的源码要好读些,并在STM32上调试运行,控制直流电机效果还不错,粘贴出来大家交流交流。

extern int16_t InUk;
extern int16_t OutUk;
extern int16_t Pk;
extern int16_t Ik;
extern int16_t Dk;
extern int32_t Ek;
extern int32_t Ek_1;
extern int32_t Jfen;

void SysTick_Handler(void)
{
  Ek=InUk-TIM_GetCounter(TIM8);
  Ek_1=Ek;
  Jfen=Jfen+Ek;
  OutUk=(Pk*Ek + (Ik*Jfen)/10 + Dk*(Ek-Ek_1));
  
  if(OutUk>0)
  {
    fangxiang(2);  
  }
  if(OutUk<0)
  {
    OutUk=(-1)*OutUk;
    fangxiang(0);
  }
  if(OutUk>9950)OutUk=9950;
  TIM_SetCompare1(TIM2,OutUk);
}

比较短,所以,不用注释哈。

出0入0汤圆

发表于 2012-9-13 00:36:45 | 显示全部楼层
好像没看见电流环哦,不知道正弦波跟随误差能做到什么水平?

出0入0汤圆

发表于 2013-8-8 08:19:42 | 显示全部楼层
MeiYaLaoHu 发表于 2012-9-11 21:04
现在做经济型伺服驱动器(零售价400-500元)测试,为公司生产的电机配套。
要求转速3000-5000每分钟,运行平稳 ...

我也测试过很多国产的伺服,直流伺服  无刷伺服   AC高压伺服    很多都不太行。 控制卡只要开 On the fly 伺服驱动器跑两下立马死掉 !

出0入0汤圆

发表于 2013-8-18 23:36:21 | 显示全部楼层
colinzhao 发表于 2012-9-10 23:18
已经动起来,花了我两天时间写程序,程序还需要大工程量的去完善,上个视频哈!!
感觉STM32做直流伺服还是 ...

是不是电压不够?  看你用手捏住他他会走的慢点 这种电机貌似是DC75V的电压!

出0入0汤圆

发表于 2013-10-28 16:32:23 | 显示全部楼层
MeiYaLaoHu 发表于 2012-9-12 21:14
直流有刷、直流无刷。配1000线增量编码器。4000个脉冲转一圈。
用途:喷绘机Y轴扫描电机。(带动喷头来回 ...


我给做一个满足你性能要求的,你给多少钱呢。不过编码器我希望至少是2500线的,一圈有10000个脉冲,编码器要均匀。控制周期1ms。
性能会出乎你意料的。

出0入0汤圆

发表于 2013-10-28 16:57:42 | 显示全部楼层
MeiYaLaoHu 发表于 2012-9-11 21:04
现在做经济型伺服驱动器(零售价400-500元)测试,为公司生产的电机配套。
要求转速3000-5000每分钟,运行平稳 ...

你那是  国产 伺服电机?,啥品牌?

出0入0汤圆

发表于 2014-1-8 06:28:40 | 显示全部楼层
kmani 发表于 2013-10-28 16:32
我给做一个满足你性能要求的,你给多少钱呢。不过编码器我希望至少是2500线的,一圈有10000个脉冲,编码 ...

控制周期1ms,是不是太慢了,一般的控制都在10KHz以上

出0入0汤圆

发表于 2014-1-8 09:08:40 | 显示全部楼层

出0入0汤圆

发表于 2014-1-16 20:23:15 | 显示全部楼层
11111111111111111111111111111

出0入0汤圆

发表于 2014-3-25 16:39:28 | 显示全部楼层
楼主你好,看了下你的图,正余弦编码器输出直接连接到stm32上,不用对波形处理?

出0入0汤圆

 楼主| 发表于 2014-3-26 14:13:39 | 显示全部楼层
jayzah 发表于 2014-3-25 16:39
楼主你好,看了下你的图,正余弦编码器输出直接连接到stm32上,不用对波形处理? ...

这个电机是政教编码的编码器来的。

出0入0汤圆

发表于 2014-3-27 00:49:24 | 显示全部楼层
colinzhao 发表于 2014-3-26 14:13
这个电机是政教编码的编码器来的。

电机型号多少 在哪买的 我也买来玩玩

出0入0汤圆

 楼主| 发表于 2014-3-28 14:35:10 | 显示全部楼层
jayzah 发表于 2014-3-27 00:49
电机型号多少 在哪买的 我也买来玩玩

淘宝买的二手的,七八十块钱,买的时候仔细观察下编码器输出线,通常正交编码器就三相,A\B\Z,有的是单端的,有的是差分的,要么自己判断,要么跟卖家沟通清楚,不过有些卖家不怎么懂。

出0入0汤圆

发表于 2014-4-12 11:22:44 | 显示全部楼层
LOVE_mcu 发表于 2013-8-8 08:19
我也测试过很多国产的伺服,直流伺服  无刷伺服   AC高压伺服    很多都不太行。 控制卡只要开 On the fl ...

请教on the fly专业术语怎么解释?

出0入0汤圆

发表于 2014-4-12 11:48:09 | 显示全部楼层
colinzhao 发表于 2012-9-13 00:36
顺便发个几乎是史上最简单的PID C语言源码,相校比网上流行的源码要好读些,并在STM32上调试运行,控制直流 ...

楼主能说说位置控制的大概原理吗?

出0入0汤圆

 楼主| 发表于 2014-4-14 16:55:55 | 显示全部楼层
小混hun 发表于 2014-4-12 11:48
楼主能说说位置控制的大概原理吗?


位置控制原理其实并不复杂:
1、应有位置参考量,此参考量可以认为是我们输入的目标位置。
2、PID的运行需要有获取当前位置量。
3、PID环节根据参考量与当前两,得出PWM真空比,当然,方向也包含在里面。
4、PWM经过功率放大,就驱动电机了。

上面讲的只是位置环。实际上的产品内外环加起来有四五个呢。

出0入4汤圆

发表于 2014-4-14 18:09:51 | 显示全部楼层
MeiYaLaoHu 发表于 2012-9-11 21:04
现在做经济型伺服驱动器(零售价400-500元)测试,为公司生产的电机配套。
要求转速3000-5000每分钟,运行平稳 ...

难道用于纺织机械

出0入0汤圆

发表于 2014-4-15 11:14:10 | 显示全部楼层
colinzhao 发表于 2014-4-14 16:55
位置控制原理其实并不复杂:
1、应有位置参考量,此参考量可以认为是我们输入的目标位置。
2、PID的运行 ...

我现在想做位置环是在步进电机控制上,新手问题比较多:
1,我控制步进电机是用的专用芯片,TMC262,只要给它发送脉冲就可以驱动步进电机,其他都不要管。
2,正因为我是用专用芯片来驱动,调速也只要调节输出脉冲的频率大小就行了。
3,我现在想用PID来实现位置闭环控制,如果按照当前位置实际量与当前位置参考量来用PID调节输出的话,
我一直不明白输出量是什么?输出量直接就控制输出脉冲的频率吗?还是需要怎么转换成其他什么的量?
4,还有我使用步进电机控制是有加速算法的,梯形加速或者S形加速。如果用PID来控制的话,要实现位置闭环控制和加速算法结合在一起,这个也不知怎么做才好?一直想不明白。

出0入0汤圆

 楼主| 发表于 2014-4-15 11:19:33 | 显示全部楼层
本帖最后由 colinzhao 于 2014-4-15 11:21 编辑
小混hun 发表于 2014-4-15 11:14
我现在想做位置环是在步进电机控制上,新手问题比较多:
1,我控制步进电机是用的专用芯片,TMC262,只要 ...


呵呵,若你用步进电机的话,实际上做位置PID的思路应该是把实际机械位置作为最外环,你的输出量是直接位置输出,建议使用增量式PID,简单而有效哈。
增量式PID其输出结果可以是脉冲频率,这种控制方式以前弄过。

出0入0汤圆

发表于 2014-4-15 11:22:41 | 显示全部楼层
本帖最后由 小混hun 于 2014-4-15 11:24 编辑
colinzhao 发表于 2014-4-15 11:19
呵呵,若你用步进电机的话,实际上做位置PID的思路应该是把实际机械位置作为最外环,你的输出量是直接位 ...


直接输出量是位置输出,是不是就直接拿这个量来控制脉冲的产生?是用来控制产生的脉冲数量还是脉冲的频率?

编辑原因:谢谢,增量式PID输出直接控制脉冲频率

出0入0汤圆

发表于 2014-4-15 16:21:31 | 显示全部楼层
colinzhao 发表于 2014-4-15 11:19
呵呵,若你用步进电机的话,实际上做位置PID的思路应该是把实际机械位置作为最外环,你的输出量是直接位 ...

再请教下,如果我用的是增量式PID的话,我位置参考量是取控制周期时间内的位移量吗?
比如我PID控制周期为1ms,那么位置参考量就是电机这1ms内的位置量,还是到当前时间所有的位移量?

出0入0汤圆

 楼主| 发表于 2014-4-16 15:05:52 | 显示全部楼层
小混hun 发表于 2014-4-15 16:21
再请教下,如果我用的是增量式PID的话,我位置参考量是取控制周期时间内的位移量吗?
比如我PID控制周期 ...

PID的参考量即整个PID环节的输入呀,即目标值,这个目标值在一段时间内是不变的,除非目标值想改变。

出0入0汤圆

 楼主| 发表于 2014-4-16 15:10:17 | 显示全部楼层
顺便提个个人观点,目前关于伺服与运动控制的大部分领域,CORTEX-M 的ARM将绝对取代DSP,有不同观点的,欢迎讨论哈哈哈哈。

出0入0汤圆

发表于 2014-9-2 15:06:38 | 显示全部楼层
colinzhao 发表于 2012-9-12 16:42
400-500是直流的还是交流的呢,若是交流的话,可能够呛。
交流伺服算法比直复杂很多,因而必须用高端主控 ...

350M??? ,很多厂家都用的是2406

出0入0汤圆

发表于 2014-9-5 15:26:03 | 显示全部楼层

出0入0汤圆

发表于 2014-11-12 19:01:54 | 显示全部楼层
楼主V5,这样就搭了个伺服!

出0入0汤圆

发表于 2014-11-12 21:23:19 | 显示全部楼层
看过了,谢谢

出20入62汤圆

发表于 2016-2-3 22:39:08 | 显示全部楼层
mark一下 直流伺服pid

出0入0汤圆

发表于 2016-3-9 22:31:47 | 显示全部楼层
学习了 以后有机会自己做

出0入0汤圆

发表于 2016-3-15 08:36:52 | 显示全部楼层

学习了 以后有机会自己做
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-29 02:27

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表