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

[复制链接]
538|24
 楼主| lmksz 发表于 2026-6-9 21:38 | 显示全部楼层
powerantone 发表于 2026-6-9 15:53
寄存器写保护解除后,有没有其他寄存器影响OPA3的配置。

检查过了, 没有其它地方对模拟寄存器SYS_AFE_REG0(设定OPA3放大倍数)再进行操作了。
 楼主| lmksz 发表于 2026-6-9 21:41 | 显示全部楼层
classroom 发表于 2026-6-9 16:20
母线电流差分信号接P3.14/P3.15了吗,接反的话放大倍数会出错。

P3.14(OPA3_IN) 接GND---电源负, P3.15(OPA3_IP) 接PGND(逆变桥三个下管下面采样电阻的公共点)
 楼主| lmksz 发表于 2026-6-9 21:45 | 显示全部楼层
cr315 发表于 2026-6-9 18:29
ADC通道3的引脚是不是P2.7,不对的话读的不是OPA3输出。

OPA_OUT(OPA3, ENABLE);  //OPA3_OUT_P输出到P2.7


在P2.7脚实测数据如下:
989656a281863274e6.png   对VCM的测量根据凌鸥的介绍资料内部运放单段工作模式的介绍:
178696a2818d740e07.png 402006a2818fa22c1c.png


 楼主| lmksz 发表于 2026-6-9 21:51 | 显示全部楼层
probedog 发表于 2026-6-9 17:54
OPA3时钟使能了,但模拟模块时钟是否正确配置。

若模拟模块时钟未正确配置, 相电流采样和母线电压, 调速电位器ADC值也会有问题, 但目前只有母线电流ADC转换有问题
 楼主| lmksz 发表于 2026-6-9 21:56 | 显示全部楼层
duo点 发表于 2026-6-9 19:15
OPA3输出使能到P2.7,但ADC可能采的是其他引脚的信号。

#define ADC0_CURRENT_B_CHANNEL         (ADC_CHANNEL_1)           //V current sense
#define ADC0_BUS_CURR_CH          (ADC_CHANNEL_3)    //母线电流ADC采样通道,

//V相电流和母线电流采样
ADC0_CHN1 =ADC0_CURRENT_B_CHANNEL | ADC0_BUS_CURR_CH<<8;

V相电流ADC转换(from OPA1_OUT)的结果是正确的, 但母线电流(from OPA3_OUT)转换结果却偏小很多.

 楼主| 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