一种高精度的电压检测技术方案及实现方法
机小系统软件设计实现
单片机软件在Keil uVision3编译环境下,使用C51进行开发,调试通过并编译生成运行文件*.hex或*.bin,再将运行文件通过RS232口直接下载到单片机里即可。单片机软件的功能结构如图3所示。
初始化:对单片机小系统的寄存器、中断源、串行通讯波特率等进行初始化。
AD数据采集与计算:采用软件滤波方法,对连续20次采样数据去除最大、最小点后,再进行平均。
E2PROM存取:对计算出的AD各采样通道各段的校准系数进行存储。
AD校准数据处理:对平均后的AD原始采样数据进行校准计算。
串行通讯:串行通讯的接收和发送采用中断处理方式,处理消息见3.4中说明。
看门狗:软件可恢复性措施。
3.3.2 计算机自动校准软件设计
如果采用人工手动操作仪表、测试数据记录、计算并存取校准系数等,则对一块测试板一个通道的校准就需要大约2~3小时,并易造成人为误差或错误,因此不能满足使用需要。为此,采用Borland C++ Builder 6.0设计了计算机自动校准软件,校准一个测试板的所有8个通道仅需要3~5分钟的时间。软件结构框图如图4所示。
(1)参数配置:对仪表工作参数、仪表GPIB地址、AD量程、校准分段数、被校准的AD通道等进行配置,使用初始配置文件。
(2)测试仪表控制:通过GPIB接口、使用VISA驱动函数、调用仪表指令建立测试仪表连接、设置仪表工作参数、读取测试数据等。
(3)校准流程控制:依次进行每个测量通道的信号电压设定、原始采样数据读取、数字万用表的测量电压读取、各分段的校准系数计算、校准系数下发等。
(4)串行通讯:采用主动方式向测试板发送消息,发送过程包括组帧、加帧头帧尾、加校验;中断方式接收单片机软件上报的数据,并对接收数据进行去校验、去帧头帧尾、拆帧。
(5)校准系数计算:按照两点决定一条直线的原理,根据(y-y1)/(y2-y1)=(x-x1)/(x2-x1),计算出校准系数k、b。
(6)校准结果验证:信号源输出某一电压时,将测试板读取的AD校准后的电压与数字万用表测量数据进行对比,判断校准操作的正确性。
3.4 AD通道自动校准和采集数据验证
按照图2组建自动校准系统,启动自动校准软件,执行"自动校准"可自动完成所选通道的电压自动校准,执行"采集数据验证"可自动完成所选通道的校准结果验证。
4 应用结果
试验过程中记录的一组校准前后的电压测量对比数据如表1所示。表1的测试数据表明,经过校准,可将测试板的电压测量绝对精度提高到5mV以内。
采用此电压校准技术的测试板已经批量应用于本公司的各款功放的生产调试、测试活动中,并实现了基站开局后对功放输入、输出、驻波等信号强度的准确检测,最大限度保证了基站的覆盖范围和通讯质量。
本文介绍的高精度电压检测技术方案是一种简单实用的技术方案,该方案对于以AD芯片为核心的精确电压测量系统开发活动具有一定的推广价值。