OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 84|回复: 9

关于51单片机交流检测的关题

[复制链接]

11

主题

53

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
376
金钱
376
注册时间
2024-8-27
在线时间
43 小时
发表于 4 天前 | 显示全部楼层 |阅读模式
1金钱

电路

电路
如题,有个项目需要用到单片机直接检测交流信号,按理说51单片机不是不能直接检测负电压吗,电路也没有使用电阻网络给偏置电压,是用软件算法来实现正常采样吗,有点想不通,麻烦哪位大佬能指点一下吗?谢谢

最佳答案

查看完整内容[请看2#楼]

或许就只检测正半周,并假设负半周与正半周对称; 或许内部有上拉电阻。 建议示波器测一下波形看负半周有没有被削掉。
回复

使用道具 举报

13

主题

3475

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8980
金钱
8980
注册时间
2020-5-11
在线时间
4550 小时
发表于 4 天前 | 显示全部楼层
本帖最后由 LcwSwust 于 2025-12-9 16:59 编辑

或许就只检测正半周,并假设负半周与正半周对称;
或许内部有上拉电阻。
建议示波器测一下波形看负半周有没有被削掉。
专治疑难杂症
回复

使用道具 举报

11

主题

53

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
376
金钱
376
注册时间
2024-8-27
在线时间
43 小时
 楼主| 发表于 3 天前 | 显示全部楼层
LcwSwust 发表于 2025-12-9 16:57
或许就只检测正半周,并假设负半周与正半周对称;
或许内部有上拉电阻。
建议示波器测一下波形看负半周有 ...

采样电阻上面的波形是交流正弦波,看来就像大佬说的,只能检测正半周的瞬时值,忽略掉负半周了,多谢大佬
回复

使用道具 举报

11

主题

53

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
376
金钱
376
注册时间
2024-8-27
在线时间
43 小时
 楼主| 发表于 3 天前 | 显示全部楼层
LcwSwust 发表于 2025-12-9 16:49
或许就只检测正半周,并假设负半周与正半周对称;
或许内部有上拉电阻。
建议示波器测一下波形看负半周有 ...

还有个问题,看了手册,这个芯片电源电压VDD的最小-0.3V,最高5.8V,看了波形,最低峰值电压已经到了-1.5V左右了,也没有坏,这是什么原因?是因为制造参数留有余地所以没有损坏吗?还有这种交流检测电路是否设计的有问题,不应该这样直接检测交流电而是应该先整流或偏置后再检测才是合乎规范的?
回复

使用道具 举报

13

主题

3475

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8980
金钱
8980
注册时间
2020-5-11
在线时间
4550 小时
发表于 3 天前 | 显示全部楼层
KKGG 发表于 2025-12-10 09:47
还有个问题,看了手册,这个芯片电源电压VDD的最小-0.3V,最高5.8V,看了波形,最低峰值电压已经到了-1.5V ...

你得看IO口的输入电压范围,不是VDD的范围。一般单片机IO口会有两个钳位二极管,只要电流不要太大就不会坏,你看VOL不是串了10K电阻吗,可以测下这个电阻两端的电压差就知道电流有多大了。
专治疑难杂症
回复

使用道具 举报

11

主题

53

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
376
金钱
376
注册时间
2024-8-27
在线时间
43 小时
 楼主| 发表于 昨天 14:23 | 显示全部楼层
LcwSwust 发表于 2025-12-10 10:19
你得看IO口的输入电压范围,不是VDD的范围。一般单片机IO口会有两个钳位二极管,只要电流不要太大就不会 ...

123 (2).png 大佬,我只检测正半周,采样100+个点,然后比较得到最大峰值,求出有效值的方法,最后计算出来的电压值大部分时候是正常的,但是总是周期性的出现电压下降后再马上又正常的现像,波动比较大,找了很久,也调整了定时器采样频率,都解不能解决,请大佬指点下,谢谢,或者有没有类假的例程?
回复

使用道具 举报

13

主题

3475

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8980
金钱
8980
注册时间
2020-5-11
在线时间
4550 小时
发表于 昨天 15:09 | 显示全部楼层
本帖最后由 LcwSwust 于 2025-12-12 15:11 编辑
KKGG 发表于 2025-12-12 14:23
大佬,我只检测正半周,采样100+个点,然后比较得到最大峰值,求出有效值的方法,最后计算出来的电压值 ...

两点建议:
1.数据点通过串口发送到电脑,找一个能绘制波形的软件,便于查看实时波形。 也可以结合示波器,看一下是实际电压有波动还是采样受干扰。
2.用峰值转换为有效值可能易受干扰,建议硬件滤波、软件滤波或采用“均方根”的方式计算有效值。

忘了问,你的采样率是多少?
专治疑难杂症
回复

使用道具 举报

11

主题

53

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
376
金钱
376
注册时间
2024-8-27
在线时间
43 小时
 楼主| 发表于 昨天 16:04 | 显示全部楼层
本帖最后由 KKGG 于 2025-12-12 16:34 编辑
LcwSwust 发表于 2025-12-12 15:09
两点建议:
1.数据点通过串口发送到电脑,找一个能绘制波形的软件,便于查看实时波形。 也可以结合示波 ...

1:有用示波器测试过一段时间,波形比较稳定的正弦波,负半周被嵌位了一部分最低的波形,正常情况。
2:至于“均方根”方式计算也试过,用每个采集到的数据平方后累加,求平均值后再*1.414得到有效值,但是好像还是有波动很大,不知道是不是我计算方法不对?
3:采样率大概1.7K或以上都有试过(ADC时钟375K/(采样周期数200+固定的完整转换时间为18.5个Tadck))
回复

使用道具 举报

13

主题

3475

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8980
金钱
8980
注册时间
2020-5-11
在线时间
4550 小时
发表于 昨天 16:48 | 显示全部楼层
本帖最后由 LcwSwust 于 2025-12-12 16:51 编辑
KKGG 发表于 2025-12-12 16:04
1:有用示波器测试过一段时间,波形比较稳定的正弦波,负半周被嵌位了一部分最低的波形,正常情况。
2: ...

采样率应该可以,均方根要注意采样总时间得是周期的整数倍,如20ms、40ms,峰值计算那就大于一个周期(20ms)就行。
还是看数据波形吧,有些串口助手可以绘制数据波形,如SSCOM、STC-ISP。

专治疑难杂症
回复

使用道具 举报

11

主题

53

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
376
金钱
376
注册时间
2024-8-27
在线时间
43 小时
 楼主| 发表于 4 小时前 | 显示全部楼层
LcwSwust 发表于 2025-12-12 16:48
采样率应该可以,均方根要注意采样总时间得是周期的整数倍,如20ms、40ms,峰值计算那就大于一个周期(20m ...

多谢大佬的指点,问题差不多解决了,我每次只采样一个周期就送去显示的话确实数据非常不稳定,我把采样多个周期的数据一起再比较出最大值送去显示处理的话,数据就比较正常稳定了,还有就是因为使用了定时器的关系,需要考滤到定时周期与采样的冲突问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


关闭

原子哥极力推荐上一条 /1 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-12-13 16:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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