[LKS32 软件] LKS32MC086N8Q8 OPA3采集母线电流异常

[复制链接]
418|24
stormwind123 发表于 2026-6-10 11:25 | 显示全部楼层
其他OPA正常,可能OPA3硬件连接有问题,比如虚焊。
七毛钱 发表于 2026-6-10 13:45 | 显示全部楼层
ADC左对齐可能影响高精度读数,但偏差大可能不是对齐问题。
内政奇才 发表于 2026-6-10 15:26 | 显示全部楼层
OPA3输出到P2.7测量放大倍数不对,说明OPA配置或输入有问题。
又见江南雨 发表于 2026-6-10 19:16 | 显示全部楼层
ADC触发源是MCPWM_T0,触发时OPA3输出是否稳定。
没有太阳的晴天 发表于 2026-6-10 21:48 | 显示全部楼层
单独给OPA3输入已知信号,测输出是否符合设定的增益。
 楼主| lmksz 发表于 2026-6-11 15:22 | 显示全部楼层
onlycook 发表于 2026-6-9 22:23
ADC采样顺序中通道3是第4个,DAT3对应通道3,看看顺序错没错。

谢谢提示,把代码检查了,如下,未搞错。

ADC0_CHN1 = ADC0_CURRENT_B_CHANNEL | (ADC0_BUS_CURR_CH<<8);     //母线电流采样是第四个
#define BUS_Curr_ADC0_RESULT          (ADC0_DAT3)            //母线电流ADC转换值是定义在ADC0_DAT3
 楼主| lmksz 发表于 2026-6-11 15:49 | 显示全部楼层
onlycook 发表于 2026-6-9 22:23
ADC采样顺序中通道3是第4个,DAT3对应通道3,看看顺序错没错。

应该是没有搞错, 如下:
#define BUS_Curr_ADC0_RESULT          (ADC0_DAT3)
ADC0_CHN1 = ADC0_CURRENT_B_CHANNEL | (ADC0_BUS_CURR_CH<<8);

struFOC_CtrProc.nBusCurrent = BUS_Curr_ADC0_RESULT-struFOC_CtrProc.struFOC_CurrLoop.ADCOffset.Offset_bc
 楼主| lmksz 发表于 2026-6-11 15:51 | 显示全部楼层
onlycook 发表于 2026-6-9 22:23
ADC采样顺序中通道3是第4个,DAT3对应通道3,看看顺序错没错。


 楼主| lmksz 发表于 2026-6-11 17:57 | 显示全部楼层
stormwind123 发表于 2026-6-10 11:25
其他OPA正常,可能OPA3硬件连接有问题,比如虚焊。

这个查过了,引脚加锡, 换MCU都试过,没效果。走线万用表也查了,从电流采样到MCU管脚是通的。
 楼主| lmksz 发表于 2026-6-15 11:00 | 显示全部楼层
没有太阳的晴天 发表于 2026-6-10 21:48
单独给OPA3输入已知信号,测输出是否符合设定的增益。

谢谢建议。
用外部电阻分压给Vp(BI), Vn(GND_B)差分电压, 测试结果如下:
798826a2f696a0a4b9.png , 按照理论放大倍数计算的ADC值基本与实际读到的ADC值相符, 说明PGA配置是对的。

偏差还是有点大, 特别是小信号在低放大倍数下。

另外:给差分信号的外部分压电阻在器件功率满足的前提下,尽量选小一点的阻值,使差分信号的内阻尽量小,对测量结果准确有帮助。
 楼主| lmksz 发表于 2026-6-17 22:00 | 显示全部楼层
这个问题的最新debug情况, 与大家分享一下:
对母线电流的检测, 希望得到与电源示数接近的电流读数, 电路上需要采用较大的滤波时间常数或者对采集到的差分母线电流ADC值做LowPass滤波处理。验证了这两种方法, 硬件上加大母线电流差分信号的滤波时间常数的方法更好, 最后得到的电流读数很好得符合电源显示电流数。 前面怀疑软件上OPA和ADC配置的问题其实是方向错了,也说明了用固定模拟量(无高频分量)输入OPA3--->ADC_CH3验证配置代码, 为何结果是正确的,
xixi2017 发表于 2026-7-31 12:20 | 显示全部楼层
其余 OPA 正常唯独 OPA3 异常,基本锁定 OPA3 硬件接线、配置、前端采样电路、同步采样四大类问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部
0