世纪电源网社区logo
社区
Datasheet
标题
返回顶部
未解决

机器运行过程中MCU偶尔报一下故障怎么回事?

[复制链接]
查看: 432 |回复: 6
1
xinshoudianyuan
  • 积分:1425
  • |
  • 主题:55
  • |
  • 帖子:231
积分:1425
LV6
高级工程师
  • 2022-4-17 10:50:07
10问答币
电源正在满载运行,输出48V50A,控制芯片是28950,MCU芯片是STM32F103C8T6,电脑上位机和MCU之间通过CAN进行数据交换(波特率500K,100ms速率)。现在发现在运行过程中偶尔会出现MCU报输入过欠压、输出过流、输出欠压等故障导致电源出现停机现象,而且是不规律的,有时候开机很久20个小时不出现,有时候15分钟不到就出现了,让人头疼。

一、针对以上这几个故障检测,是这样实现的:
1.输入过欠压:用隔离线性运放,对应90~264VAC输入,得到的采集值为0.7~2.3V,超出这个范围则认为输入过欠压,连续判断1000ms都为真值才认为真故障。
2.输出欠压:直接在输出端用几个1206贴片电阻分压实现了,对应48V采集值为2.4V,低于36V则认为输出欠压,高于55V则认为输出过压,连续判断时间为200ms。
3.输出过流:差分电路转换,对应50A采集值为2V,高于65A则认为输出过流,连续判断时间为200ms。

二、处理措施:
1.用探讨靠测MCU对应的这几个采集信号AD引脚波形,正常运行情况下比较干净的没什么毛刺,假信号触发的概率感觉很低;
2.将故障判断时间加长,比如全部拉长到连续判断3S,但是还是有时候会发生,觉得不可思议。拿这个输入过欠压为例,现在电网220VAC基本都很稳定的了,要超出这个90~264V范围而且维持3S钟,真的不太可能;而对于这个输出过流,因为中间还有一个60A的限流环节,更加不太可能出现电流上冲到65A而且维持这么久;
3.后来将这几个采集信号故障判断软件暂时全部屏蔽了,到目前为止没有再发生过报故障导致的关机;

三、疑问:
综合起来觉得MCU误判的概率比较大,但是什么原因导致误判呢?跟电脑上位机这个100ms的CAN数据来回交换有无关联?会不会是频繁的CAN中断使AD采样不正常出现误判?谢谢大家指点。

收藏收藏
nc965
  • 积分:93884
  • |
  • 主题:115
  • |
  • 帖子:27413
积分:93884
版主
  • 2022-4-17 15:04:48
  • 倒数6
 
主要嫌疑人:EMC
次要嫌疑人:算法,包括数据溢出算法一个不小心,中断程序错过了某些事,AD口换来换去时间准备不充分,AD基准电压不稳定
xinshoudianyuan
  • 积分:1425
  • |
  • 主题:55
  • |
  • 帖子:231
积分:1425
LV6
高级工程师
  • 2022-4-17 16:23:49
  • 倒数3
 
EMC的可能性可能不大,因为屏蔽了内部故障判断后,后面试了好多次,都不再出现这些故障;
最大的可能感觉是跟上位机这个100ms的高速数据交换带来的CAN中断,有时候影响了AD采样转换,但是我们也做过测试对比,将这个CAN数据交换速率加快到10ms,当时以为这样误报故障的概率会大大提高,但是也不明显。

killaws
  • 积分:10968
  • |
  • 主题:23
  • |
  • 帖子:594
积分:10968
LV10
总工程师
  • 2022-4-17 15:21:51
  • 倒数5
 
查下MCU的供电是否会稳定。ADC最终采样的值是和供电电压大小有关的(ADC没有加参考电压的情况下)。程序是怎么判断连续1000ms,电压低于某个阈值的。当某个点的采样电压低于阈值了,下一个点电压恢复,是否有状态初始化。ADC采样得到的数值是否稳定,在电压稳定的情况下。
xinshoudianyuan
  • 积分:1425
  • |
  • 主题:55
  • |
  • 帖子:231
积分:1425
LV6
高级工程师
  • 2022-4-17 16:18:34
  • 倒数4
 
供电VCC 3.3V是专用电源转换芯片提供的,非常稳定。ADC采样采到一次低于阈值,就开始计时,连续1000ms内如果都发现一直低于阈值,则认为检测到真故障并发出锁机指令。如果这1000ms内发现某一次高于阈值,则不认为是真故障。



flymaco
  • 积分:2688
  • |
  • 主题:4
  • |
  • 帖子:46
积分:2688
LV8
副总工程师
  • 2022-4-20 10:09:06
  • 倒数2
 
1)测试AD中断,CAN中断是否正常(分别添加AD,CAN中断的测试信号,测试其进入退出规律),与误判时刻波形对应。
2)测试mcu本身中断处理耗时与控制周期的占比,是否过高,如果耗时过高,则考虑精简代码,优化算法,降低耗时。

3)计算电压过高等算法本身的检查,平均值计算,有效值计算写法?有没有存在存在一些算法逻辑上的问题。
xinshoudianyuan
  • 积分:1425
  • |
  • 主题:55
  • |
  • 帖子:231
积分:1425
LV6
高级工程师
最新回复
  • 2022-4-20 11:50:16
  • 倒数1
 
好的,感谢指点
热门技术、经典电源设计资源推荐

世纪电源网总部

地 址:天津市南开区黄河道大通大厦8层

电 话:400-022-5587

传 真:(022)27690960

邮 编:300110

E-mail:21dy#21dianyuan.com(#换成@)

世纪电源网分部

广 东:(0755)82437996 /(138 2356 2357)

北 京:(010)69525295 /(15901552591)

上 海:(021)24200688 /(13585599008)

香 港:HK(852)92121212

China(86)15220029145

网站简介 | 网站帮助 | 意见反馈 | 联系我们 | 广告服务 | 法律声明 | 友情链接 | 清除Cookie | 小黑屋 | 不良信息举报 | 网站举报

Copyright 2008-2024 21dianyuan.com All Rights Reserved    备案许可证号为:津ICP备10002348号-2   津公网安备 12010402000296号