qepuemc
发表于 7 天前
梁工 发表于 2025-6-24 15:50
我要看原理图
原理图真心没有。就是看别人这么做的,有的东西和你们的讨论是一样的。现在是3.6V供电。用TL431的2.5V做VREF基准。 用两个TL432串联做的采样电路。取中间的1.25V左右给到互感器。
然后去ADC3 直接套你给发的程序。基本就是在0点上。然后我自己改2048为2035就到了0了。
然后串口显示也是可以的。可以看到数据。给互感器加上穿心电流也可以直接到20多。
现在我为了方法。把LED显示也加进去了。用的中断19(定时器3) 正常显示。
做到这一步还是没有看出来这个是怎么标定的。
qepuemc
发表于 7 天前
梁工 发表于 2025-6-24 15:50
我要看原理图
下面的我改后的程序。刚才忘了发了。
梁工
发表于 7 天前
qepuemc 发表于 2025-6-24 17:06
原理图真心没有。就是看别人这么做的,有的东西和你们的讨论是一样的。现在是3.6V供电。用TL431的2.5V做V ...
ADC标定都是程序配合完成的。
先将输入信号短路,读取0点值ADC0.
输入电压V1(小电压,比如0.1V),读到ADC1.
输入电压V2(接近满量程,比如4.5V),读到ADC2.
则线性校准系数为 K=(V2-V1)/(ADC2-ADC1)。
测量任意电压得到ADCx,则 Ux = K*(ADCx - ADC0)。
如果是采样交流电计算有效值的,则输入信号短路后要计算ADC平均值来作为0点。
qepuemc
发表于 6 天前
梁工 发表于 2025-6-24 17:11
ADC标定都是程序配合完成的。
先将输入信号短路,读取0点值ADC0.
输入电压V1(小电压,比如0.1V),读到A ...
现在我的标定方式就是短路互感器。然后通过调整2048使程序输出为零到0.01。然后输入不同的电流值,给到互感器。然后分多段进行线性标定。不知道这样对不对?
或者是不短路互感器,直接调整2048的值是程序输出为零到0.1。然后给互感器不同的电流值在分多段进行线性标定。因为在这种情况下,用万用表根本就测不出ABC引脚的数值变化,所以我也不知道用哪种方式更对一些
梁工
发表于 6 天前
qepuemc 发表于 2025-6-25 10:24
现在我的标定方式就是短路互感器。然后通过调整2048使程序输出为零到0.01。然后输入不同的电流值,给到互 ...
ADC的线性非常好,互感器线性一般也都可以的,不需要分多段标定,满量程标定就可以了。
短路输入、手动调整0点也是可以的,但是不合适量产,这个要注意。