3. 万用表功能测试:直流电压测量精度校准与验证、交流电压测量精度校准与验证

好了,咱们接着聊万用表量产测试的核心环节——电压测量精度校准与验证。说实话,这块是整台表子的“脸面”。你直流测不准,交流测不准,用户第一反应就是“这表坏了”。我在产线上见过太多因为电压档位校准没做好,整批返工的案例。所以,这块咱们得掰开揉碎了讲。

3.1 直流电压测量精度校准

直流电压校准,说白了就是给万用表“定标”。让它知道,输入1.0000V,它就该显示1.0000V。这里我习惯用“两点校准法”,也就是零点和满量程点。

核心思路: 先校零,再校满。零偏了,后面全白搭。

3.1.1 校准流程

  1. 零点校准: 将输入端短路,读取ADC的原始码值。这个值理论上应该是0,但实际会有偏移。把这个偏移量存入EEPROM。
  2. 满量程校准: 输入一个高精度基准电压(比如10.0000V),读取ADC码值。计算增益系数,也存起来。
  3. 线性度检查: 我个人习惯在中间再取2-3个点,比如2V、5V、8V,看看线性度是否OK。有一次我在项目中发现,零点满量程都准,但中间点偏了0.02%,查了半天是ADC的积分非线性问题。

我的小技巧: 校准前,让万用表和标准源预热至少15分钟。温度漂移是精度的大敌,你想想看,刚开机和稳定半小时后的读数能差好几个字。

3.1.2 代码示例(伪代码)

// 直流电压校准函数
void DC_Voltage_Calibrate(void) {
    uint32_t adc_zero, adc_full;
    float gain;

    // 1. 零点校准
    Input_Short();  // 短路输入端
    Delay_ms(100);  // 等待稳定
    adc_zero = ADC_Read_Average(10);  // 读10次取平均
    EEPROM_Write(ZERO_OFFSET_ADDR, adc_zero);

    // 2. 满量程校准
    Input_Apply(10.0);  // 输入10.0000V标准电压
    Delay_ms(100);
    adc_full = ADC_Read_Average(10);
    gain = 10.0 / (adc_full - adc_zero);  // 计算增益
    EEPROM_Write(GAIN_FACTOR_ADDR, gain);

    // 3. 验证
    float test_voltage = 5.0;
    Input_Apply(test_voltage);
    uint32_t adc_test = ADC_Read_Average(10);
    float result = (adc_test - adc_zero) * gain;
    // 判断误差是否在允许范围内
    if (fabs(result - test_voltage) > 0.001) {
        // 校准失败,标记不良品
        Set_Fail_Flag();
    }
}

注意: 校准系数一定要写双备份。我曾经遇到过EEPROM写入时掉电,导致系数全丢,整批表都得重新校准。血的教训啊。

3.2 直流电压测量精度验证

校准完了,咱们得验证。验证不是走过场,是真刀真枪地测。我一般会选几个关键电压点:

测试点 标准值 允许误差(±) 备注
1 0.0000V 0.0005V 零点漂移检查
2 1.0000V 0.001V 低量程典型点
3 5.0000V 0.005V 中间量程
4 10.0000V 0.010V 满量程点
5 20.0000V 0.020V 超量程10%测试

每个点测3次,取平均值。如果某一点超差,别急着下结论。先检查测试夹具接触是否良好,再检查标准源是否稳定。我见过太多因为探针氧化导致误判的案例了。

3.3 交流电压测量精度校准

交流电压校准比直流麻烦一些。为什么?因为交流信号有频率、有波形、有真有效值(True RMS)的问题。说白了,直流是“静态”的,交流是“动态”的。

3.3.1 校准难点

  • 频率响应: 同一个电压,50Hz和1kHz测出来可能不一样。我建议至少校两个频率点:50Hz(工频)和1kHz(通用频点)。
  • 波形影响: 正弦波、方波、三角波,真有效值转换器的响应不同。量产时我们只校正弦波,但验证时最好加一个方波看看。
  • 耦合方式: AC耦合会滤掉直流分量,这个在低电压测量时尤其要注意。

我的经验: 交流校准前,先确认你的标准源输出的是“真有效值”。有些便宜的标准源输出的是“平均值校准到有效值”,只对纯正弦波准。你换个波形就露馅了。

3.3.2 校准流程

  1. 零点校准: 输入端短路,读AC RMS值。理论上应为0,但会有底噪。这个底噪值要记录下来,作为补偿。
  2. 50Hz点校准: 输入50Hz、10.000V RMS的正弦波。读取ADC值,计算增益系数。
  3. 1kHz点校准: 输入1kHz、10.000V RMS的正弦波。再算一个增益系数。如果两个系数差异较大,说明前端模拟电路频率响应不平坦,需要硬件上做补偿。

避坑指南: 我曾经遇到一批表,50Hz校得准准的,但测400Hz的航空电源时误差大了10倍。后来发现是前端滤波电容的容值偏了,导致高频衰减。从那以后,我要求产线必须校两个频点。

3.4 交流电压测量精度验证

验证交流精度,我一般会这样安排:

测试点 频率 标准值(RMS) 允许误差
1 50Hz 1.000V ±0.5% + 5字
2 50Hz 10.000V ±0.5% + 5字
3 50Hz 100.00V ±0.5% + 5字
4 1kHz 10.000V ±1.0% + 10字
5 方波 1kHz 10.000V ±2.0% + 10字

注意看,方波的误差我放得比较宽。因为真有效值转换器对方波的响应本来就不如正弦波好。只要在规格书范围内,就算合格。

3.5 量产测试中的常见问题与对策

  • 问题1:校准后第二天又偏了。 大概率是温度漂移。对策:校准前充分预热,或者做温度补偿。
  • 问题2:同一块表,不同工位测出来结果不一样。 检查测试夹具的接触电阻。我见过用劣质香蕉插头,接触电阻有0.1Ω,在测大电流时误差巨大。
  • 问题3:交流档位低频(比如10Hz)测不准。 这是真有效值转换器的低频响应限制。对策:在规格书中明确标注频率范围,或者加一个低频补偿算法。

最后提醒一句: 校准和验证用的标准源,一定要定期送计量院检定。你标准源都不准,校准出来的表能准吗?这个道理很简单,但很多产线为了省事,一年都不送检一次。嗯,这里要注意,这是底线。

好了,直流和交流电压的校准验证就讲到这里。下一章咱们聊电流测量,那又是另一番天地了。