搜索
bottom↓
回复: 40

电流环电流采样时机如何处理以得到平均电流?

[复制链接]

出0入0汤圆

发表于 2017-7-6 13:18:25 | 显示全部楼层 |阅读模式
本帖最后由 fuquan_dai 于 2017-7-6 23:11 编辑

最近想把电机电流环搞定,遇到了电流采样的问题。用的是STM32F4,如图是PWM波形(黄色)和电流波形(蓝色),可以明显看到MOS导通期间电流一直在上升。请教各位:ADC触发的最合适的时机是什么时候(适应不同占空比情况)?如何保证采样的电流与万用表一致?

本帖子中包含更多资源

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

x

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

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2017-7-6 16:35:25 | 显示全部楼层
同样问题求问,之前发过一个帖子,得到的回复是,相电流的平均值与转矩对应。这就碰到一个问题了,电流有波动,什么时候采样才能保证得到的值比较接近平均值呢?期待懂得的人解答

出0入0汤圆

 楼主| 发表于 2017-7-6 17:39:16 | 显示全部楼层
相电流的平均值与转矩对应,这是肯定的,但应该不是我们要的答案。

出0入0汤圆

发表于 2017-7-6 17:41:43 | 显示全部楼层
用它那个高速ad高速采样积分得到有效值呗
你看你的示波器就是这样做的嘛

出0入0汤圆

发表于 2017-7-6 17:45:33 | 显示全部楼层
我觉得加一级T型阻容滤波给它先平均,再采AD。。

出50入0汤圆

发表于 2017-7-6 19:37:36 | 显示全部楼层
直接上升沿触发采集,下降沿结束,然后累加ADC缓存区

出0入0汤圆

 楼主| 发表于 2017-7-6 19:42:34 | 显示全部楼层
cddyy 发表于 2017-7-6 19:37
直接上升沿触发采集,下降沿结束,然后累加ADC缓存区

你是说PWM的上升沿和下降沿?一个PWM周期采集多次吗?那压力可能有点大

出0入0汤圆

 楼主| 发表于 2017-7-6 19:51:09 | 显示全部楼层
Earthman 发表于 2017-7-6 17:41
用它那个高速ad高速采样积分得到有效值呗
你看你的示波器就是这样做的嘛

我是要做电机电流环,不知道这样会不会效率上不来。不知道通常伺服驱动是怎么做的。。。

出0入0汤圆

 楼主| 发表于 2017-7-6 19:53:00 | 显示全部楼层
LM1876 发表于 2017-7-6 17:45
我觉得加一级T型阻容滤波给它先平均,再采AD。。

感觉电机驱动器没有这么做的,这会导致信号滞后比较多吧

出0入0汤圆

发表于 2017-7-6 20:07:57 | 显示全部楼层
fuquan_dai 发表于 2017-7-6 19:51
我是要做电机电流环,不知道这样会不会效率上不来。不知道通常伺服驱动是怎么做的。。。 ...

用stm32f3做cycle-by-cycle 电流控制

出0入0汤圆

 楼主| 发表于 2017-7-6 20:42:32 | 显示全部楼层
Earthman 发表于 2017-7-6 20:07
用stm32f3做cycle-by-cycle 电流控制

没明白,可否明示下?

出0入0汤圆

发表于 2017-7-6 20:51:42 | 显示全部楼层
STM32F4的ADC采用DMA采样一周期或者多周期,开辟一个内存区域存储DMA-ADC数据,也可以两个内存区域轮流切换,进行运算处理。

出0入0汤圆

 楼主| 发表于 2017-7-6 21:06:18 | 显示全部楼层
wwkkww 发表于 2017-7-6 20:51
STM32F4的ADC采用DMA采样一周期或者多周期,开辟一个内存区域存储DMA-ADC数据,也可以两个内存区域轮流切换 ...

那什么时候开始采,什么时候结束采呢?

出0入131汤圆

发表于 2017-7-6 21:21:06 | 显示全部楼层
pwm用上下模式,然后在cnt = 0 的时候触发(pwm中间触发)

出0入0汤圆

发表于 2017-7-6 21:27:29 | 显示全部楼层
fuquan_dai 发表于 2017-7-6 21:06
那什么时候开始采,什么时候结束采呢?

因为根据负载等各种条件的不同,电流有滞后的现象,不好选择PWM触发采样,因为这个电流偏移PWM的位置可能会变,所以可以选择逐个周期进行采样,这样积分出来电流,至于位置的选择,可以由软件算法处理,你可以采集几个周期的电流数据保存在内存中,比较最小值,两个最小之间的可以初步认为是一个周期的电流。当然也可以根据采样定理,多个周期累积,可以选择一定的时间,如以1MS为单位,采样的值作为积分处理,这样就是1MS的平均电流,下一个1MS又可以处理进来,可以把前后的值累积处理,不过这样处理的缺点就是变化较为缓慢些。

主要看你采样电流的用途,是用于显示还是PID算法,如果是显示直接多次采样累积就可以,如果是需要做电机的PID收敛则需要逐个周期,还需要有软件预测机制,可以借鉴下卡尔曼滤波算法,当然我也只是菜鸟而已。

出0入0汤圆

发表于 2017-7-6 21:27:47 | 显示全部楼层
∑-Δ型  ADC可以吗

出0入0汤圆

 楼主| 发表于 2017-7-6 21:49:45 | 显示全部楼层
wwkkww 发表于 2017-7-6 21:27
因为根据负载等各种条件的不同,电流有滞后的现象,不好选择PWM触发采样,因为这个电流偏移PWM的位置可能 ...

要用在电机电流环,应该是有比较成熟做法的,但是不知道怎么搞就是。ST电机库貌似是中点采样,用作电流环应该可能,但不知道如何做到计算的绝对值和实际电流值对应上。

出0入0汤圆

发表于 2017-7-6 23:03:00 | 显示全部楼层
cddyy 发表于 2017-7-6 19:37
直接上升沿触发采集,下降沿结束,然后累加ADC缓存区

不妥哦                                      
头像被屏蔽

出0入0汤圆

发表于 2017-7-6 23:06:45 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

 楼主| 发表于 2017-7-6 23:12:25 | 显示全部楼层
armok 发表于 2017-7-6 23:06
“ 电机电流采样问题请教”不是合格的标题。
违反版规11。请立即阅读版规(点击进入: http://www.amobbs.com ...

改成“电流环电流采样时机如何处理以得到平均电流?”,这样应该够清楚了吧?

出0入4汤圆

发表于 2017-7-7 08:31:35 | 显示全部楼层
关注,学习。。。。。。。

出0入0汤圆

 楼主| 发表于 2017-7-7 09:02:18 | 显示全部楼层
更新下,不同采样时机对信号质量有很大影响。图中阶跃为手动施加的负载。

本帖子中包含更多资源

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

x

出0入0汤圆

发表于 2017-7-7 09:13:13 | 显示全部楼层
建议看看st的一个文档,an2267,我认为说的比较清楚,而且还是有一定特色的。

出0入53汤圆

发表于 2017-7-7 09:29:45 | 显示全部楼层
powerlabor001 发表于 2017-7-7 09:13
建议看看st的一个文档,an2267,我认为说的比较清楚,而且还是有一定特色的。 ...

an2267  我帮大家传上来

本帖子中包含更多资源

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

x

出0入0汤圆

 楼主| 发表于 2017-7-7 09:39:15 | 显示全部楼层
powerlabor001 发表于 2017-7-7 09:13
建议看看st的一个文档,an2267,我认为说的比较清楚,而且还是有一定特色的。 ...

感谢指点!

出0入0汤圆

 楼主| 发表于 2017-7-7 09:40:53 | 显示全部楼层
zhcj66 发表于 2017-7-7 09:29
an2267  我帮大家传上来

感谢分享!

出0入0汤圆

发表于 2017-7-7 09:43:01 | 显示全部楼层
你做得是电流滞环吧

出0入0汤圆

 楼主| 发表于 2017-7-7 09:53:41 | 显示全部楼层
colinzhao 发表于 2017-7-7 09:43
你做得是电流滞环吧

驱动器的电流环,不知道和电流滞环有什么异同

出0入0汤圆

发表于 2017-7-7 10:16:44 | 显示全部楼层
fuquan_dai 发表于 2017-7-7 09:53
驱动器的电流环,不知道和电流滞环有什么异同

什么驱动器的电流环?你看下PT4115的原理!

出0入0汤圆

 楼主| 发表于 2017-7-7 10:38:56 | 显示全部楼层
colinzhao 发表于 2017-7-7 10:16
什么驱动器的电流环?你看下PT4115的原理!

直流有刷电机的驱动器

出140入158汤圆

发表于 2017-7-7 10:46:52 | 显示全部楼层
电流下降的这么快,用的是快续流吧?
电流闭环,如果需要高响应,要用Cycle By Cycle,用中心对称PWM,采样点在脉宽中点。
如果不需要高响应,则硬件加二阶段阻容低通滤波即可,滤波效果以恒负载时波形近似直流即可。

出0入0汤圆

 楼主| 发表于 2017-7-7 12:18:22 | 显示全部楼层
amigenius 发表于 2017-7-7 10:46
电流下降的这么快,用的是快续流吧?
电流闭环,如果需要高响应,要用Cycle By Cycle,用中心对称PWM,采样 ...

嗯 有用MOS做续流。看了些楼上的资料也是说采样脉宽中点,我的疑问是这样采样回来的直接认为是平均电流吗?另外我用TIM_TRGOSource_Update作触发源效果很差,现在用TIM_TRGOSource_OC4Ref似乎还行,通道4的比较值设得是1。这样电流受开关干扰小些,但是计算的值和万用表、示波器的电流有差距。

出0入0汤圆

发表于 2017-7-7 12:49:14 | 显示全部楼层
均值都是要内部处理的。平均  这两个字的意思很明显了。至少要两个参数及以上的等分才可以叫平均吧
如果想要直接得到平均值的,除非是芯片本身内部自行处理,否则得编程实现。

万用表或电流表显示 的多半是均值电流。其中采样周期的不同可能会带来不同的尾数或者说波动

出0入0汤圆

 楼主| 发表于 2017-7-7 13:36:06 | 显示全部楼层
rifjft 发表于 2017-7-7 12:49
均值都是要内部处理的。平均  这两个字的意思很明显了。至少要两个参数及以上的等分才可以叫平均吧
如果想 ...

表达的未必准确,我其实就是想把驱动器的电流环的电流做准确。

出0入0汤圆

发表于 2017-7-7 13:45:03 | 显示全部楼层
本帖最后由 3DA502 于 2017-7-7 13:46 编辑

一般的采样方法都是用特殊的高边检流运放采集的,用RC滤波平滑,哪里会有这种画蛇怎么添足的问题

出0入34汤圆

发表于 2017-7-7 14:31:10 | 显示全部楼层
如何保证采样的电流与万用表一致?就直接使用万用表的芯片与电路啊!

出0入0汤圆

 楼主| 发表于 2017-7-7 14:40:20 | 显示全部楼层
3DA502 发表于 2017-7-7 13:45
一般的采样方法都是用特殊的高边检流运放采集的,用RC滤波平滑,哪里会有这种画蛇怎么添足的问题 ...

呵呵 你确定吗

出0入0汤圆

 楼主| 发表于 2017-7-7 14:44:37 | 显示全部楼层
xyz543 发表于 2017-7-7 14:31
如何保证采样的电流与万用表一致?就直接使用万用表的芯片与电路啊!

道理是这样,但是好的电机驱动器肯定有别的处理方法,虽然不能追求完全的一致

出0入0汤圆

发表于 2017-10-2 17:01:45 | 显示全部楼层
asj1989 发表于 2017-7-6 21:21
pwm用上下模式,然后在cnt = 0 的时候触发(pwm中间触发)

我们就是这么干的!

出0入0汤圆

发表于 2019-12-10 11:57:27 | 显示全部楼层
xcrane 发表于 2017-10-2 17:01
我们就是这么干的!

能否分析一下配置的的代码给我看看,我现在用的CC1触发,感觉不太好

出0入0汤圆

发表于 2019-12-11 13:59:36 | 显示全部楼层
fuquan_dai 发表于 2017-7-7 12:18
嗯 有用MOS做续流。看了些楼上的资料也是说采样脉宽中点,我的疑问是这样采样回来的直接认为是平均电流吗 ...

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

本版积分规则

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

GMT+8, 2024-4-25 17:02

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

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