- 打卡等级:初来乍到
- 打卡总天数:5
- 最近打卡:2024-05-02 21:48:56
高级会员
- 积分
- 614
|
最近拿到TPA191A2样品准备后续替代手上的专业霍尔电流检测IC方案,
于是又用STC8H2K08U做了个验证板提取下数据确认可行性.
先说下编程代码的ADC转换策略,8H2K08U支持自动转换取均值(ADCEXCFG_CVTIMESET),
个人觉得这个相当于硬件数字滤波,设置ADCEXCFG = 0x06内部自动转换8次得均值,
然后在代码for循环转换ADC 10次数据排序后取4个中间值求均值,测试了下主频24Mhz输出一次ADC结果需要4ms,
反正验证板没有啥多功能完全可以接受.
经过9月10日16:29到9月11号8:55按秒提取超16小时数据确认结果很理想,
看数据上下波动1个字换算+/- 0.0416% .
在公司16:29时办公室靠近产线设备环境温度偏高一点输出结果在2402mv>2403mv波动,
当然起始的几个2401mv属于刚下载程序上电漂移.
在晚上19:00左右办公室温度缓慢下降输出值先在2402mv稳一阵再从2402mv>2401mv波动.
办公室温度持续缓慢下降直到凌晨5:00开始就一直稳定在2401mv .
从凌晨温度最低直到7点30后开始启动产线设备数据输出2401mv>2402mv波动.
原理图,整个设计使用USB 5V供电,USB-CDC串口上传,PC的串口助手上位机接收提取数据.
先把5V用PW2051稳压成3.3V给各芯片供电,然后经TL431二次稳压给MCU的ADC_Vref+.
TPA191A2是电流检测放大器IC,使用A2确认50倍数输出,测试使用分压电位器调节IN+ & IN-
之间48mV压差,不管对地电位,只管IN+ & IN- 之间压差即可,TPA191A2输出2402mv经滤波
输入到MCU的ADC CH0通道进行转换.MCU按秒读取ADC_CH0数据并通过USB-CDC
上传给PC上位机.
PCB图节省空间没有放置MCU P32连接的UCK开关,这是需要USB直接下载时使用的.
总结: 这个方案增加一个锰铜分流器可以很方便提取支路大电流数据,适当变换还可以用于其他检测项目.整体看STC的ADC稳定性是相当能抗的,这里的温度波动也可能是TPA191A2放大环路导致的,当然超12小时上下波动1个数字的数据输出我在其他32位MCU的方案还没有遇到,所以后续有需要ADC的方案优先使用STC系列的MCU.
|
|