由实验可知,采用隔离电路进行隔离必定会使模拟电压传输产生一定的误差,但线性光耦的特性决定了其输出具有很好的线性度,可以利用这点通过单片机软件进行误差的修正。
修正方法:针对隔离电路应用的场合明确隔离电压的范围,然后向隔离电路提供隔离电压的两个值,定义这两个极值为修正值,并通过单片机读出采集到的修正值的实测量值,通过输入值和实测值之间的差值,就可以通过修正算法,求出任意测量值实际对应的输入值。
图5 坐标系示意图
1. 修正算法
设x轴上各点为单片机实际测得数值,直线l上各点为线性光耦前输入值。设直线l上 a,b两点为修正值,其对应于x轴的a1、b1为单片机实际测量值,则可计算出a点和b点的误差分别为a=a-a1,b=b-b1,c1为单片机采集到任意值,若能求得误差c的值,通过修正计算c1+c即为c1的理想值c。
通过比例关系可得:
误差修正:c= c1+c;
即
针对pt100测温电路的具体做法:测温范围为-50℃~200℃,选取两个基准点如0℃和150℃,通过校验仪ca71向测温电路输入0℃和150℃,分别测量这两个点的测量值并计算实际测量值与理想值间的偏差。在实际测量中通过修正算法利用这两个偏差通过公式算出其它各点的偏差值,再对实际测量值进行修正。实验证明进行修正后温度误差可以精确到1~2℃以内。
2 .注意事项
(1) 测量数据采用中值滤波法进行处理。
为了提高测量精度,采用数字滤波技术的中值滤波法对测量数据进行处理。即每次采集n个值,去除其中的最大值和最小值而取剩余的n-2个数值的平均值,这样可防止受到突发性脉冲干扰的数据进入。
(2) 实验中发现线性光耦隔离电路会随着上电时间的持续出现隔离后的电压毫伏级的减低的情况。大约30分钟后趋于稳定。因此,将电路上电运行一段时间后再进行校准,精度更高。
六、 结束语
本文分析了线性光耦hcnr201进行模拟电压电气隔离的基本原理和隔离电路,并给出了行之有效的软件算法来提高测量电路精度。实验表明隔离电路通过修正后精度非常高,非常适合应用于对模拟电压精度要求很高的检测系统。