4. PCBA板级测试:ICT(在线测试)与FCT(功能测试)方案

好,咱们接着聊PCBA板级测试。这一块,说白了就是给电路板做“体检”。电动牙刷的PCBA虽然不像手机主板那么复杂,但该有的工序一样不能少。我个人习惯把板级测试分成两大块:ICT和FCT。一个查“身体”有没有毛病,一个看“脑子”好不好使。

4.1 ICT在线测试:查“身体”

ICT,全称In-Circuit Test,在线测试。它的核心任务就是:检查焊点、电阻、电容、电感、二极管、三极管这些元器件,有没有焊错、漏焊、虚焊,或者值对不对。

你想想看,一块板子上几百个焊点,要是靠人工拿万用表去点,那得点到猴年马月去?ICT就是干这个的,它用探针接触板子上的测试点,快速测量每个元器件的参数。

ICT能测什么?

  • 开路/短路: 检查焊点有没有连锡,或者该连的地方没连上。这是最基础的,也是最重要的。
  • 电阻值: 测电阻阻值是否在标称范围内。比如一个10kΩ的电阻,测出来只有9kΩ,那肯定有问题。
  • 电容值: 测电容容量,特别是电解电容,容易漏液或者容量衰减。
  • 二极管/三极管: 检查PN结的正向导通压降,判断器件是否损坏。
  • IC的电源对地短路: 这个很关键。如果IC的VCC和GND短路了,一上电就冒烟。

我在项目中遇到过一件事。有一批电动牙刷,客户反馈用几天就不转了。查了半天,发现是马达驱动芯片的某个引脚虚焊。但那个引脚在芯片底下,肉眼根本看不到。后来上了ICT,一测就发现那个引脚的电阻值异常。嗯,这就是ICT的价值——把隐患扼杀在摇篮里。

我的小建议: ICT的测试点设计,一定要在PCB Layout阶段就规划好。别等板子打样回来了,才发现没地方放探针。我一般要求测试点间距不小于2.54mm,探针直径选0.8mm左右,这样既稳定又不容易扎坏焊盘。

4.2 FCT功能测试:查“脑子”

ICT过了,只能说明元器件没焊错。但板子能不能正常工作?这得靠FCT,也就是Functional Test,功能测试。

FCT的测试内容,完全取决于产品的功能定义。对于电动牙刷来说,我把它分成几个核心模块:

4.2.1 电源与充电测试

  • 充电电流: 用电子负载模拟电池,看充电电路能不能输出标称的电流(比如500mA)。
  • 充电截止电压: 当电池电压达到4.2V时,充电电路应该自动停止。测这个点,防止过充。
  • 静态功耗: 牙刷待机时,电流应该小于10μA。如果大了,说明有漏电,电池会很快耗光。

4.2.2 马达驱动测试

  • PWM波形: 用示波器看马达驱动引脚的PWM波形,频率、占空比对不对。比如,强振档占空比80%,弱振档40%。
  • 马达电流: 马达堵转时,电流会飙升。FCT要能检测到过流,并触发保护。

4.2.3 按键与指示灯测试

  • 按键响应: 模拟按下按键,看MCU能不能正确识别。我习惯用气缸加探针,模拟手指按压。
  • LED亮度: 用光敏传感器检测LED的亮度,判断是否正常发光。

4.2.4 通信接口测试(如果有)

  • 蓝牙/Wi-Fi: 发送特定指令,看板子能不能正确回复。比如,发一个“读取电量”指令,看返回的数据对不对。

注意! FCT的测试环境要尽量模拟真实使用场景。比如,马达驱动测试,最好接一个真实的马达负载,而不是用电阻代替。因为马达的感性负载特性,会影响驱动芯片的波形。我曾经用纯电阻代替马达做测试,结果板子到了产线,一接马达就烧驱动芯片。后来才意识到,电阻和马达的启动特性完全不一样。

4.3 测试流程与治具设计

ICT和FCT,通常需要两套不同的治具。ICT治具主要是探针阵列,FCT治具则要复杂一些,可能包含气缸、传感器、负载等。

我一般这样安排产线流程:

  1. PCBA上料 → 放入ICT治具
  2. ICT测试 → 通过则进入下一步,不通过则标记NG,流入维修区
  3. PCBA转移 → 放入FCT治具
  4. FCT测试 → 通过则OK,不通过则NG
  5. 下料 → OK品流入组装线,NG品维修

这里有个细节:ICT和FCT的测试时间,要尽量平衡。如果ICT只要5秒,FCT要30秒,那ICT工位就会空闲,造成浪费。我建议把FCT的测试项拆开,比如充电测试和马达测试分开,用两个FCT工位并行跑。

4.4 测试数据管理

测试数据不能白测。每块板子的测试结果,都应该上传到MES系统。这样,一旦出现批量问题,可以快速追溯。

我常用的数据格式是这样的:

{
  "sn": "20250315001",        // 板子序列号
  "ict_result": "PASS",       // ICT结果
  "ict_data": {
    "r1": 10020,              // 电阻R1实测值,单位Ω
    "c1": 10.05,              // 电容C1实测值,单位μF
    "vcc_gnd": 0.001          // VCC-GND短路测试,单位Ω
  },
  "fct_result": "PASS",       // FCT结果
  "fct_data": {
    "charge_current": 498,    // 充电电流,单位mA
    "motor_pwm_duty": 80.1,   // 马达PWM占空比,单位%
    "led_brightness": 1200    // LED亮度,单位lux
  },
  "test_time": "2025-03-15 10:30:00"
}

有了这个数据,你就能做SPC(统计过程控制)。比如,连续100块板子的充电电流都在495-505mA之间,突然有一块变成了480mA,那就要警惕了——可能是充电芯片的批次有问题。

避坑指南: 我曾经遇到过,ICT测试全部PASS,但FCT死活过不了。查了三天,发现是ICT的探针压力太大,把某个电容的引脚压变形了,导致电容值漂移。后来我规定,ICT探针的压力必须控制在150g±20g,并且每1000次测试后要校准一次。

4.5 总结一下

ICT和FCT,一个都不能少。ICT保“底”,FCT保“面”。ICT把焊接问题挡在门外,FCT确保功能完整。两者配合,才能让电动牙刷的PCBA良率稳定在99.5%以上。

嗯,这一章就到这里。下一章咱们聊聊整机装配后的老化测试,那又是另一番天地了。