搜索

[STM32G0] ADC对50Hz交流电采样,波形走样

[复制链接]
1810|15
手机看帖
扫描二维码
随时随地手机跟帖
ziustc|  楼主 | 2021-10-11 01:25 | 显示全部楼层 |阅读模式
电流互感器对交流电采样,放大后输出到STM32进行ADC。奇怪一个简单的低通会让波形完全走样,请大佬们帮忙分析分析,不胜感激!
电路如图,两个CURR_FEEDBACK就直接接STM32的ADC口了。

电路图

电路图


运放输出后,A点波形如下图,是正常的,波形绕1.65V(=3.3/2)震荡,幅值也正常。这个80Hz不准确,实际数格子可以看出还是50Hz。

A点波形

A点波形


但B点波形就不对了,如下图。而且电流为0时波形在2.3V左右,不在1.65V,很奇怪。

B点波形

B点波形


这是我直接接示波器得到的曲线,在STM32中用ADC采集到的与B点波形一致,说明程序是没问题的。

同样的电路,我自己焊的洞洞板,输出是没问题的。然后送淘宝做PCB板,就出现上述这个问题了。而且你看我有两路ADC,完全一样的电路,两路同样的问题,若说是焊接或者制版缺陷,也不会两个错的一样。


使用特权

评论回复
ziustc|  楼主 | 2021-10-11 09:10 | 显示全部楼层
补充一下,芯片用的STM32G030F6P6,设置ADC频率12.6MHz,采样周期79.5Cycle,查表输入阻抗应该是大于100k欧的。

使用特权

评论回复
skyred| | 2021-10-11 09:44 | 显示全部楼层
你这是电压波形吧?
不像是电流

使用特权

评论回复
manbo789| | 2021-10-11 10:44 | 显示全部楼层
是不是ADC的GPIO设置了上拉?应该设置为悬空,

使用特权

评论回复

评论

manbo789 2021-10-12 10:25 回复TA
@地瓜patch :是的,就是一个意思, 
地瓜patch 2021-10-11 22:44 回复TA
不是设为模拟输入么? 
Bobby13| | 2021-10-11 10:48 | 显示全部楼层
保持管脚设为模拟输入,但把ADC初始化禁掉和采样关闭,试试B点波形?

使用特权

评论回复
海洋无限| | 2021-10-11 13:11 | 显示全部楼层
后级影响?

使用特权

评论回复
linxi6414| | 2021-10-11 14:08 | 显示全部楼层
互感器的阻抗匹配电阻呢?没有电阻或者电阻过大,波形就会变的,本来就是这样的。

使用特权

评论回复
lrhsx33| | 2021-10-11 16:15 | 显示全部楼层
基本确定AD采样对运放的影响,可以加一级跟随解决

使用特权

评论回复
R2D2| | 2021-10-11 22:15 | 显示全部楼层
短路R5R6看看什么波形?

使用特权

评论回复
ziustc|  楼主 | 2021-10-12 00:46 | 显示全部楼层
skyred 发表于 2021-10-11 09:44
你这是电压波形吧?
不像是电流

嗯,互感器电流信号通过运放转变为电压信号了

使用特权

评论回复
ziustc|  楼主 | 2021-10-12 00:52 | 显示全部楼层
manbo789 发表于 2021-10-11 10:44
是不是ADC的GPIO设置了上拉?应该设置为悬空,

没有,这是我的CubeMX设置,两路ADC为模拟量输入,无上下拉。

GPIO设置

GPIO设置

使用特权

评论回复
ziustc|  楼主 | 2021-10-12 00:58 | 显示全部楼层
linxi6414 发表于 2021-10-11 14:08
互感器的阻抗匹配电阻呢?没有电阻或者电阻过大,波形就会变的,本来就是这样的。 ...

互感器产生的次级电流是通过运放转变为电压信号的,你可以分析下我这个电路,这样的互感器负载最小(几乎为零),但需要运放有足够输出电流。对于我这个不到1mA的电流来说,LM324完全够用的。

使用特权

评论回复
ziustc|  楼主 | 2021-10-13 03:44 | 显示全部楼层
R2D2 发表于 2021-10-11 22:15
短路R5R6看看什么波形?

谢谢建议,我按你的说法短路以后,发现B点(也就是A点了,也就是接stm32引脚的位置)示波器显示正常了!但adc采样结果波动大的离谱,不知是不是芯片坏了。

我最后重新焊了一块板子,发现B点波形正常了,ADC采样也正常了。折腾了2天,难道是芯片的问题?

打算有空交换一下两块板上的stm32,看看还是不是同样的问题

使用特权

评论回复
ziustc|  楼主 | 2021-10-13 03:47 | 显示全部楼层
Bobby13 发表于 2021-10-11 10:48
保持管脚设为模拟输入,但把ADC初始化禁掉和采样关闭,试试B点波形?

嗯嗯我以前没想到这个方法,多谢!

我昨晚满怀希望的试了下,结果还是一点没变。

我最后重新焊了一块板子,发现B点波形正常了,ADC采样也正常了。折腾了2天,难道是芯片的问题?

打算有空交换一下两块板上的stm32,看看还是不是同样的问题

使用特权

评论回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 我要提问 投诉建议 申请版主

本版热帖

本版活跃用户

优质原创写原创,赢大奖

编辑推荐

  • 1 呐咯密密 得到打赏 ¥310.00
  • 2 qbwww 得到打赏 ¥265.00
  • 3 yanzhengxin1 得到打赏 ¥200.00
  • 4 full_stack 得到打赏 ¥100.00
  • 5 laocuo1142 得到打赏 ¥55.00
  • 6 zhangjiantao 得到打赏 ¥50.00
  • 7 小叶三千 得到打赏 ¥50.00
  • 8 cjseng 得到打赏 ¥50.00
  • 9 改名了 得到打赏 ¥30.00
  • 10 HXM1593 得到打赏 ¥15.00
在线客服 快速回复 返回顶部 返回列表