做工业产品的人大概都遇到过这样的问题产品在实验室里常温下测试一切正常性能稳定跑几天都不出问题。但一拿到现场夏天户外四五十度或者冬天零下二三十度产品就开始出问题——死机、重启、数据错误、启动失败。送回实验室常温下测又一切正常查不出问题。这就是工业产品和消费产品最大的区别工作环境。消费产品在室内常温下用温度范围大概是0至35度环境温和。工业产品可能在户外、工厂、矿山、车载环境下用温度范围可能是零下40度到零上85度甚至更极端。元器件在不同温度下的参数是不一样的常温下正常不代表高低温下也正常。高低温测试是工业产品必须做的测试也是最容易暴露问题的测试。很多产品的设计缺陷在常温下看不出来一到高低温就暴露了。这篇文章从实际应用的角度讲清楚工业产品为什么需要高低温测试、测试标准和等级、测试怎么做、高低温下常见的问题和原因、内存相关的高低温问题重点、其他元器件的高低温特性、以及怎么设计能在宽温区稳定工作的产品。一、为什么工业产品需要高低温测试在讲怎么做之前先讲清楚为什么工业产品必须做高低温测试。1.1 工作环境恶劣工业产品的工作环境通常比消费产品恶劣得多1. 户外设备户外的温度变化很大夏天太阳直射下设备内部温度可能达到70至85度冬天零下二三十度甚至更低。昼夜温差可能达到三四十度。2. 工厂环境工厂里有各种热源锅炉、熔炉、电机设备附近的温度可能很高。有些工厂冬天没有暖气温度很低。3. 车载环境车载设备的温度变化更大夏天太阳暴晒下车内温度可能达到80度以上冬天零下几十度。而且车辆启动时温度变化很快。4. 矿山/油田环境地下矿井温度高、湿度大油田野外设备冬天极冷、夏天极热。5. 电力/通信基站户外基站机柜夏天高温冬天低温要求全年不间断运行。这些环境下产品必须能在宽温范围内稳定工作不能只在常温下好用。1.2 元器件参数随温度变化电子元器件的参数不是固定的会随温度变化。温度变化会影响元器件的电气特性可能导致产品工作不正常。主要的影响1. 半导体器件晶体管的阈值电压、漏电流、延迟都会随温度变化。温度升高漏电流增加温度每升高10度漏电流大约翻倍延迟变化时序裕量减少。2. 内存内存的时序参数tRCD、tRP、tRAS等、刷新周期、漏电流都会随温度变化。高温下漏电流增加需要更频繁的刷新时序参数变化可能导致时序不满足。3. 电容电容的容量和ESR等效串联电阻会随温度变化。特别是电解电容低温下容量下降、ESR变大可能导致电源纹波增大、启动失败。陶瓷电容的容量也会随温度变化X7R材质在-55至125度范围内容量变化±15%Y5V变化更大。4. 晶振晶振的频率会随温度变化温度特性虽然变化不大通常几十ppm但对时序要求严格的电路可能有影响。低温下有些晶振可能不起振。5. 电源IC电源IC的输出电压、效率、负载能力会随温度变化。高温下电源IC可能过热保护输出电压下降。6. 连接器连接器的接触电阻会随温度变化高温下金属膨胀可能导致接触不良低温下塑料变脆可能导致损坏。7. PCBPCB的基材尺寸会随温度变化热胀冷缩可能导致焊点疲劳、BGA虚焊。高温下PCB的介电常数变化影响信号线的特性阻抗。这些参数变化单独看可能不大但叠加在一起在极端温度下可能导致产品工作不正常。1.3 可靠性要求高工业产品通常要求高可靠性、长生命周期5至10年甚至更长不能经常出故障。很多工业产品一旦出故障可能导致生产线停机、数据丢失、安全事故损失很大。高低温测试是验证产品可靠性的重要手段。通过高低温测试可以提前暴露设计缺陷、元器件选型问题、焊接问题确保产品在整个生命周期内、在各种温度环境下都能稳定工作。1.4 标准和客户要求工业产品通常有行业标准和客户要求必须满足一定的温度范围和测试条件。比如- 工业级电子元器件的标准温区是-40至85度有些是-25至85度。- IEC 60068和GB/T 2423是环境试验的国家标准规定了高低温测试的方法和条件。- 很多行业有专门的标准比如车载的ISO 16750、电力的DL/T 1075、通信的YD/T 1539等。- 客户在采购工业产品时通常会要求产品满足一定的工作温度范围并提供高低温测试报告。不做高低温测试或者测试不通过产品就无法进入工业市场无法满足客户要求。二、高低温测试的标准和等级讲完了为什么要做再讲高低温测试的标准和等级。2.1 温度等级划分电子元器件和产品通常按工作温度范围分为几个等级工业产品通常要求工业级温区即-40至85度或-25至85度。具体要求取决于产品的应用场景和客户要求。注意元器件的温度等级和产品的温度等级不是一回事。用了工业级元器件不代表产品就能在工业级温区下工作——产品的设计、散热、电源、PCB等都会影响产品的温度范围。但用了消费级元器件产品肯定无法满足工业级温区要求。2.2 主要测试标准高低温测试的主要标准1. IEC 60068国际电工委员会的环境试验标准是最权威的环境试验标准。其中- IEC 60068-2-1低温试验- IEC 60068-2-2高温试验- IEC 60068-2-14温度变化试验- IEC 60068-2-30湿热试验2. GB/T 2423中国的环境试验国家标准等同采用IEC 60068。其中- GB/T 2423.1低温试验- GB/T 2423.2高温试验- GB/T 2423.22温度变化试验3. 行业标准不同行业有专门的标准比如- 车载ISO 16750道路车辆电气电子设备环境条件- 电力DL/T 1075数字式保护测控装置通用技术条件- 通信YD/T 1539通信设备可靠性通用试验方法- 轨道交通TB/T 2846铁路地面信号产品高温及低温试验方法2.3 常见的高低温测试项目高低温测试不是一个单一的测试而是包含多个测试项目1. 高温工作试验产品在高温环境下比如70度或85度通电工作验证产品在高温下能否正常工作。通常持续2至4小时或更长。2. 低温工作试验产品在低温环境下比如-25度或-40度通电工作验证产品在低温下能否正常工作。通常持续2至4小时或更长。3. 高温存储试验产品在高温环境下比如85度或105度不通电存放验证产品能否承受高温存储。通常持续24至72小时。存储后恢复到常温检查产品是否正常。4. 低温存储试验产品在低温环境下比如-40度或-55度不通电存放验证产品能否承受低温存储。通常持续24至72小时。存储后恢复到常温检查产品是否正常。5. 温度循环试验产品在高温和低温之间循环变化比如-40度至85度循环10至100次验证产品能否承受温度反复变化。温度循环主要考验焊点、连接器、PCB的热疲劳性能。6. 温度冲击试验产品在高温和低温之间快速切换比如从85度快速降到-40度转换时间小于5分钟验证产品能否承受温度急剧变化。温度冲击比温度循环更严酷主要考验封装、键合线、焊点的热应力承受能力。7. 温湿度循环试验温度和湿度同时循环变化验证产品在温湿度综合环境下的可靠性。不同的产品和标准要求的测试项目和条件不同。工业产品通常至少要做高温工作、低温工作、温度循环这三项。三、高低温测试怎么做讲完了标准再讲高低温测试的实际操作。3.1 测试设备高低温测试需要的设备1. 高低温试验箱最基本的设备可以控制箱内温度在-70至150度范围内温度变化速率通常是1至5度/分钟。用于高温工作、低温工作、温度循环测试。2. 温度冲击试验箱有两个温区高温区和低温区产品在两个温区之间快速移动实现温度快速冲击。转换时间通常小于5秒至5分钟。用于温度冲击测试。3. 数据采集系统用于监控产品在测试过程中的工作状态比如温度传感器、电压电流监测、串口日志采集、网络监控等。4. 负载设备让产品在测试过程中带负载工作比如模拟输入输出、网络流量、视频播放等确保产品在满负载下工作。5. 万用表/示波器用于测试前后和测试过程中的参数测量。3.2 测试流程以高温工作试验为例典型的测试流程1. 测试前检查在常温下检查产品是否正常工作记录各项参数电压、电流、温度、功能状态。2. 放入试验箱把产品放入高低温试验箱连接好电源线、数据线、监控线确保箱门密封良好。3. 常温稳定先在常温下通电工作30分钟确认产品正常。4. 升温以1至2度/分钟的速率升温到目标温度比如70度或85度。升温速率不要太快避免热冲击。5. 高温保持在目标温度下保持2至4小时或更长根据标准要求让产品内部温度达到稳定。在保持期间产品通电工作带负载监控工作状态。6. 高温测试在高温下测试产品的各项功能和性能记录参数。比如启动测试、功能测试、性能测试、内存测试、长时间稳定性测试。7. 降温以1至2度/分钟的速率降温到常温。8. 常温恢复在常温下保持30分钟让产品恢复到常温。9. 测试后检查检查产品是否正常工作和测试前的参数对比确认没有异常。低温工作试验的流程类似只是把升温改成降温目标温度改成低温比如-25度或-40度。温度循环试验的流程在高温和低温之间循环每个循环包括升温→高温保持→降温→低温保持→升温。循环次数根据标准要求通常10至100次。3.3 测试条件设置测试条件的设置要根据产品的应用场景和标准要求来确定1. 温度范围根据产品的工作温度等级来定比如工业级-40至85度。测试温度通常要比产品标称的工作温度范围略宽留一定裕量。2. 温度变化速率通常1至2度/分钟不要太快。太快的温度变化会产生热冲击可能损坏产品而且不是工作试验的目的温度冲击有专门的测试。3. 保持时间高温/低温保持时间要足够长让产品内部温度达到稳定。通常2至4小时大体积或大发热量的产品需要更长时间。4. 负载条件测试时产品要带负载工作最好是满负载。因为满负载时产品发热量最大最容易出问题。空载测试可能发现不了问题。5. 监控测试过程中要持续监控产品的工作状态记录温度、电压、电流、日志等。这样出问题时才能定位原因。6. 判据提前定义好测试通过/失败的判据比如功能正常、性能下降不超过多少、没有死机重启、参数在规格范围内等。3.4 测试注意事项1. 不要直接从极端温度取出产品测试结束后要先恢复到常温再打开试验箱取出产品。否则产品表面会结露冷凝水可能导致短路。2. 注意产品的发热量产品自身发热会使产品内部温度高于试验箱温度。测试时要测量产品内部的实际温度而不是只看试验箱温度。比如试验箱设70度产品内部可能达到85度。3. 线缆的影响连接产品的电源线、数据线会传导热量影响试验箱的温度均匀性。线缆不要太多太粗尽量用细线并且从试验箱的专用走线孔引出。4. 多个产品同时测试如果同时测试多个产品产品之间要留足够的空间保证空气流通避免互相遮挡影响温度均匀性。5. 安全高低温试验箱是特种设备要按照操作规程使用。高温时注意防烫伤低温时注意防冻伤。试验箱要有超温保护、断电保护等安全功能。6. 测试记录详细记录测试条件、测试过程、测试结果、异常现象。测试报告要完整便于追溯和分析。四、高低温下常见的问题和原因讲完了怎么做测试再讲高低温下常见的问题和原因。这是高低温测试的核心——测试的目的就是发现问题发现问题后要能定位原因。4.1 高温下死机/重启高温下死机或重启是最常见的问题。原因可能有1. 内存时序裕量不足高温下内存的时序参数变化漏电流增加信号质量下降导致内存读写错误系统死机。这是最常见的原因之一。2. CPU/GPU过热降频或保护高温下CPU/GPU温度过高触发过热保护自动降频或重启。散热设计不好的产品容易出这个问题。3. 电源IC过热保护高温下电源IC温度过高触发过热保护输出电压下降或关断导致系统掉电重启。4. 电容容量下降/ESR变大高温下电解电容的容量下降、ESR变大虽然电解电容高温下容量变化比低温小但长期高温会加速老化导致电源纹波增大电源不稳定系统重启。5. 看门狗超时高温下系统性能下降任务执行变慢导致看门狗超时系统重启。6. 晶振频率漂移高温下晶振频率漂移过大导致系统时钟不稳定通信出错系统死机。4.2 低温下启动失败低温下启动失败也是常见的问题。原因可能有1. 晶振不起振低温下有些晶振特别是廉价晶振的起振时间变长甚至不起振导致系统无法启动。这是低温启动失败最常见的原因。2. 电源启动慢低温下电解电容的ESR变大、容量下降电源IC的启动时间变长输出电压上升慢可能导致上电时序不对系统无法启动。3. 内存参数不满足低温下内存的时序参数变化可能导致DDR Training失败系统无法启动。4. CPU启动慢低温下CPU的性能下降启动时间变长可能导致看门狗超时系统重启。5. 连接器接触不良低温下连接器的金属收缩接触电阻增大可能导致接触不良系统无法启动。6. PCB阻抗变化低温下PCB的介电常数变化信号线的特性阻抗变化可能影响信号质量导致启动失败。4.3 温度循环后失效温度循环后失效通常是机械疲劳导致的。原因可能有1. 焊点疲劳温度反复变化PCB和元器件的热膨胀系数不同焊点反复承受热应力产生疲劳裂纹最终断裂。BGA封装的焊点尤其容易出这个问题。2. BGA虚焊温度循环后BGA焊点可能出现虚焊裂纹导致接触不良系统不稳定。X射线检查可以发现。3. 连接器接触不良温度循环后连接器的接触件疲劳接触电阻增大导致接触不良。4. PCB分层/起泡温度循环后PCB的层间结合力下降可能出现分层或起泡影响信号线的阻抗和信号质量。5. 元器件封装开裂温度循环后有些元器件的封装特别是塑料封装可能出现开裂导致芯片损坏。4.4 温度冲击后失效温度冲击比温度循环更严酷因为温度变化快热应力大。温度冲击后失效的原因1. 热应力导致的封装开裂温度快速变化元器件封装内部不同材料的热膨胀系数不同产生很大的热应力导致封装开裂。2. 键合线断裂热应力可能导致芯片内部的键合线断裂导致芯片失效。3. 焊点断裂快速温度变化产生的热应力比温度循环大可能导致焊点快速断裂。4. PCB分层快速温度变化可能导致PCB层间快速分离出现分层。4.5 高低温下性能下降除了死机和启动失败高低温下还可能出现性能下降1. CPU性能下降高温下CPU过热降频性能下降低温下CPU的频率可能上不去因为时序参数变化性能也下降。2. 内存带宽下降高低温下内存的时序参数变化可能需要降低内存频率才能稳定工作导致内存带宽下降。3. 存储速度下降高低温下eMMC/SD卡的读写速度可能下降特别是低温下。4. 通信出错率增加高低温下信号质量下降通信以太网、USB、串口等的出错率增加吞吐量下降。5. 功耗变化高温下漏电流增加功耗上升低温下有些电路的功耗也可能变化。五、内存相关的高低温问题重点内存是高低温下最容易出问题的元器件之一也是工业产品最关心的部分。下面专门讲内存相关的高低温问题。5.1 为什么内存高温下容易出问题内存高温下容易出问题主要有几个原因1. 漏电流增加内存是用DRAM单元存储数据的每个单元是一个电容加一个晶体管。电容会漏电需要定期刷新refresh才能保持数据。温度升高漏电流增加温度每升高10度漏电流大约翻倍数据保持时间变短。如果刷新不及时数据就会丢失导致读写错误。2. 时序参数变化内存的时序参数tRCD、tRP、tRAS、tWR等会随温度变化。高温下晶体管的延迟变化时序参数可能不再满足导致读写错误。3. 信号质量下降高温下PCB的介电常数变化信号线的特性阻抗变化发送端和接收端的电路性能变化信号的上升沿、下降沿、过冲、振铃都会变化导致信号质量下降眼图变差误码率增加。4. Training失败高温下信号质量下降时序裕量减少可能导致DDR Training失败系统无法启动。5. 刷新周期需要调整因为高温下漏电流增加有些内存需要在高温下缩短刷新周期增加刷新频率才能保证数据不丢失。如果固件没有根据温度调整刷新周期高温下可能出现数据错误。5.2 消费级内存和工业级内存的高低温差异消费级内存和工业级内存的高低温差异主要体现在1. 温区范围消费级内存通常是0至70度工业级内存通常是-25至85度或-40至85度。消费级内存在70度以上或0度以下参数没有保证可能无法正常工作。2. 测试条件消费级内存只在常温下测试工业内存在全温区测试低温、常温、高温都测确保整个温区内参数都满足规格。3. 时序裕量工业级内存的时序参数在全温区内都留了足够的裕量高温和低温下都能稳定工作。消费级内存的时序裕量只在常温下满足高低温下可能不满足。4. 刷新参数工业级内存的刷新参数在全温区内都有保证高温下漏电流增加但仍在规格范围内。消费级内存高温下漏电流可能超过规格导致数据丢失。5. 封装和材料工业级内存用的封装材料和键合线更耐高温和低温温度循环和冲击下更可靠。消费级内存的封装材料可能在极端温度下出现问题。6. 供货周期工业级内存的供货周期更长通常5至10年消费级内存可能1至2年就停产。用一个通俗的比喻消费级内存就像普通运动鞋适合在平地上走路便宜舒适但不能爬山涉水工业级内存就像登山靴贵一些重一些但能在各种恶劣环境下穿不容易坏。5.3 怎么选择能在宽温区稳定工作的内存选择能在宽温区稳定工作的内存要注意以下几点1. 选工业级温区的型号明确选择工业级温区的内存型号-25至85度或-40至85度不要用消费级型号冒充。注意有些商家把消费级remark成工业级卖要从正规渠道采购。2. 确认经过全温区测试要求供应商提供全温区测试报告确认内存在低温、常温、高温下都满足规格。3. 选经过SoC平台验证的型号优先选用SoC官方支持列表里的工业级内存型号这些型号经过了平台验证兼容性和稳定性有保障。比如汉四ROCFOUR的工业级LPDDR4X已经进入瑞芯微官方DDR支持列表温区支持-40至105度容量覆盖2GB、4GB、8GB在RK3588、RK3568等平台上经过了全温区验证。选用列表里的工业级内存可以减少高低温下的兼容性问题。4. 做高低温验证即使选了工业级内存也要在自己的产品上做高低温测试验证内存在产品的实际环境下考虑产品的散热、电源、PCB设计能稳定工作。不要以为选了工业级内存就万事大吉。5. 考虑温度降额如果产品的工作温度接近内存的上限比如85度要考虑温度降额适当降低内存频率增加时序裕量。或者选温区更宽的型号比如-40至105度。6. 固件支持温度自适应有些内存和SoC支持根据温度自动调整刷新周期和时序参数固件要支持这个功能确保高温下自动缩短刷新周期低温下自动调整时序。5.4 内存高低温测试的注意事项测试内存在高低温下的稳定性要注意1. 用内存测试工具不要只看系统能不能启动要用专门的内存测试工具比如memtester、stress-ng、DDR Test做长时间的内存读写测试检查有没有数据错误。2. 满负载测试测试时要让内存满负载工作大量读写这样最容易暴露问题。空载时内存访问少可能发现不了问题。3. 长时间测试高低温下的内存问题有时候不是马上出现的可能运行几个小时甚至几天后才出现。测试时间要足够长建议至少4小时最好24小时以上。4. 监控错误测试过程中要监控内存错误比如ECC错误如果支持ECC、内存读写错误、系统日志中的内存相关错误。5. 不同温度点测试不要只测最高温和最低温还要测中间温度点比如-25度、0度、25度、50度、70度、85度因为有些问题只在特定温度点出现。6. 温度循环测试除了恒温测试还要做温度循环测试验证内存在温度变化过程中也能稳定工作。温度循环下BGA焊点和PCB的问题更容易暴露。六、其他元器件的高低温特性除了内存其他元器件的高低温特性也要关注。下面简单讲几个关键元器件。6.1 电容电容是高低温下最容易出问题的无源元器件之一。1. 电解电容- 低温下容量下降可能下降20%至50%ESR变大可能变大几倍导致电源纹波增大、启动失败。- 高温下电解液挥发加速寿命缩短温度每升高10度寿命大约减半。长期高温下容量下降、ESR变大。- 建议工业产品尽量不用电解电容或者用宽温电解电容-40至105度或-40至125度并且降额使用电压留50%以上裕量。2. 陶瓷电容- 容量随温度变化取决于材质- C0GNP0温度特性最好-55至125度范围内容量变化±30ppm/度几乎不变。- X7R-55至125度范围内容量变化±15%。- X5R-55至85度范围内容量变化±15%85度以上变化更大。- Y5V-30至85度范围内容量变化22%至-82%变化很大不建议工业产品用。- 建议关键电路去耦、滤波、定时用C0G或X7R材质不要用Y5V。3. 钽电容- 低温下ESR变大高温下漏电流增加。- 钽电容对过压和纹波敏感高温下更容易失效甚至短路燃烧。- 建议工业产品慎用钽电容如果要用电压降额到50%以下并且加保险丝。6.2 晶振晶振是系统的时钟源高低温下如果出问题整个系统都无法工作。1. 频率温度特性晶振的频率随温度变化通常用ppm百万分之一表示。普通晶振的温度特性是±20至±50ppm高精度晶振TCXO可以做到±1至±5ppm。2. 低温不起振低温下有些晶振特别是廉价的无源晶振起振时间变长甚至不起振。这是低温启动失败的常见原因。3. 建议- 工业产品用工业级晶振-40至85度或更宽不要用消费级。- 关键时钟用TCXO温度补偿晶振保证全温区频率稳定。- 晶振的匹配电容要选温度特性好的C0G材质并且按照晶振厂家的推荐值设计。- 晶振下方不要走线避免干扰。6.3 电源IC电源IC是系统的心脏高低温下如果出问题整个系统都无法工作。1. 输出电压温度漂移电源IC的输出电压会随温度变化通常用mV/度表示。高精度电源IC的温漂很小普通电源IC可能有几mV/度的温漂。2. 过热保护高温下电源IC温度过高会触发过热保护TSD输出关断或降额导致系统掉电。3. 负载能力下降高温下电源IC的负载能力可能下降因为导通电阻变大、散热变差可能无法提供额定电流。4. 低温启动低温下电源IC的启动时间变长有些电源IC在极低温度下可能无法启动。5. 建议- 工业产品用工业级电源IC-40至85度或更宽。- 电源IC的负载能力留30%以上裕量不要满负载运行。- 做好散热确保电源IC在最高环境温度下结温不超过规格。- 关键电源用高精度、低温漂的电源IC。- 上电时序要留裕量考虑低温下电源启动慢的情况。6.4 连接器连接器是容易被忽视但高低温下容易出问题的元器件。1. 接触电阻变化高温下金属膨胀低温下金属收缩可能导致接触压力变化接触电阻增大。2. 塑料件变形/变脆高温下塑料件可能变形低温下塑料件可能变脆导致连接器损坏或接触不良。3. 建议- 工业产品用工业级连接器-40至85度或更宽不要用消费级。- 关键连接用金属外壳、针脚镀金的连接器保证接触可靠。- 连接器要锁止防止振动和温度变化导致松动。- 温度循环测试后要检查连接器的接触电阻。6.5 PCBPCB本身的高低温特性也要关注。1. 热膨胀系数CTEPCB的基材FR-4的热膨胀系数和铜箔、元器件不同温度变化时产生热应力可能导致焊点疲劳、BGA虚焊。2. 介电常数变化PCB的介电常数随温度变化影响信号线的特性阻抗高速信号DDR、PCIe、USB的信号质量可能受影响。3. Tg值PCB的玻璃化转变温度Tg普通FR-4的Tg是130至140度高温FR-4的Tg是170至180度。超过Tg值PCB的热膨胀系数会突变尺寸变化大可能导致焊点损坏。工业产品建议用高Tg板材Tg≥170度。4. 建议- 工业产品用高Tg FR-4板材Tg≥170度不要用普通FR-4。- 无铅工艺的PCB要考虑无铅焊料的熔点更高217度对PCB的耐热性要求更高。- BGA区域的PCB要加厚或加铜减少PCB变形对BGA焊点的影响。- 温度循环测试后要检查BGA焊点X射线检查。七、高低温测试的常见坑和注意事项最后讲几个高低温测试的常见坑避免踩坑。7.1 只测常温不测高低温这是最常见的坑。很多产品开发时只在常温下测试觉得常温下没问题就可以了结果到了现场高低温下出问题。工业产品必须做高低温测试这是基本要求。不要省这个时间和成本现场出问题的代价远大于测试的成本。7.2 只测启动不测长时间运行很多人高低温测试时只看产品能不能启动启动了就觉得通过了。实际上很多问题不是启动时出现的而是运行一段时间后才出现比如内存泄漏、过热、电容老化。高低温测试时要让产品长时间运行至少4小时最好24小时以上带负载跑压力测试才能发现问题。7.3 空载测试不带负载空载测试时产品发热量小温度低可能发现不了高温问题。满负载时产品发热量最大最容易出问题。高低温测试时一定要带负载最好是满负载模拟产品的实际工作状态。7.4 只看试验箱温度不看产品内部温度试验箱的温度是箱内空气温度产品内部的温度特别是发热元器件附近可能比试验箱温度高很多。比如试验箱70度CPU附近可能达到90度。测试时要测量产品内部的实际温度用温度传感器或热电偶确保产品内部的温度在元器件的规格范围内。不要只看试验箱温度。7.5 测试后直接取出产品不恢复常温高温或低温测试后直接从试验箱取出产品产品表面会结露冷凝水可能导致短路和腐蚀。测试结束后要先在试验箱内恢复到常温至少30分钟再打开箱门取出产品。7.6 用消费级元器件指望测试通过用了消费级元器件消费级内存、电容、晶振等指望通过高低温测试。消费级元器件的参数只在常温下有保证高低温下可能无法工作测试通不过是正常的。工业产品必须用工业级元器件这是基础。不要在元器件选型上省钱现场出问题的代价远大于元器件的差价。7.7 测试不记录出问题无法追溯测试时不记录测试条件、过程、结果出了问题无法追溯和分析。高低温测试要详细记录测试条件温度范围、变化速率、保持时间、循环次数、测试过程每个时间点的温度、产品状态、测试结果功能、性能、参数、异常现象死机、重启、错误日志。完整的测试记录是问题分析的基础。八、怎么设计能在宽温区稳定工作的产品讲完了测试和问题最后讲怎么从设计阶段就保证产品能在宽温区稳定工作。8.1 元器件选型1. 全部用工业级元器件工业产品的关键元器件内存、CPU、电源IC、晶振、电容、连接器等都要用工业级温区的型号-40至85度或更宽不要用消费级。2. 留温度裕量元器件的温度规格要留裕量比如产品最高工作温度70度元器件要选85度或105度的不要刚好选70度的。3. 选经过验证的型号内存、CPU等关键元器件选经过平台验证、市场验证的型号不要用刚出的新型号新型号可能有未发现的问题。4. 注意元器件的温度特性了解每个关键元器件的温度特性容量变化、ESR变化、频率漂移、温漂等在设计时留裕量。8.2 PCB设计1. 用高Tg板材工业产品用高Tg FR-4板材Tg≥170度减少温度变化时的PCB变形。2. 阻抗控制考虑温度高速信号DDR、PCIe、USB的阻抗控制要考虑温度变化对介电常数的影响留一定的阻抗裕量。3. BGA设计BGA区域的PCB要加厚或加铜减少PCB变形BGA焊点用焊盘定义NSMD增加焊点可靠性BGA下方不要打过孔除非是激光孔。4. 散热设计发热元器件CPU、电源IC、DDR附近要做好散热加散热片、导热垫、散热过孔确保元器件温度在规格范围内。5. 电源完整性高低温下电源的稳定性更重要去耦电容要足够电源平面要完整电源IC要留裕量。6. 信号完整性高低温下信号质量下降信号完整性的裕量要留足阻抗、等长、拓扑、间距都要按照规范设计并且留裕量。8.3 散热设计1. 评估发热量设计阶段就要评估每个元器件的发热量计算最高环境温度下元器件的结温确保在规格范围内。2. 散热路径设计好散热路径发热元器件的热量要能通过散热片、导热垫、金属外壳、空气对流散发出去。3. 避免热点不要把多个发热元器件放在一起避免局部热点。发热元器件之间要留足够的空间。4. 散热片和导热垫CPU、电源IC等高热元器件要加散热片或导热垫把热量导到外壳或散热片上。5. 外壳散热如果产品是金属外壳可以把外壳作为散热器发热元器件通过导热垫连接到外壳。6. 温度监测关键位置CPU、电源IC、内存附近加温度传感器固件监测温度高温时降频或告警。8.4 电源设计1. 电源IC留裕量电源IC的负载能力留30%以上裕量高温下负载能力下降时仍能满足要求。2. 宽温电容电源的输入输出电容、去耦电容要用宽温型号X7R或C0G材质的陶瓷电容或宽温电解电容不要用Y5V或普通电解。3. 上电时序留裕量上电时序要留裕量考虑低温下电源启动慢的情况确保所有电源稳定后再释放复位。4. 电源监控加电源监控芯片voltage supervisor监控关键电源电压异常时复位系统防止电源不稳定导致的问题。5. 去耦电容足够每个IC的电源引脚旁边都要有去耦电容特别是DDR和CPU去耦电容要足够、靠近引脚。8.5 固件设计1. 温度自适应固件支持根据温度自动调整内存刷新周期、CPU频率、风扇转速等确保高低温下都能稳定工作。2. 高温降频高温下CPU温度过高时自动降频防止过热重启。3. 看门狗加硬件看门狗系统死机时自动重启提高可用性。4. 错误处理内存错误、通信错误等要有错误处理和重试机制不要一出错就死机。5. 温度日志记录温度和系统状态出问题时可以追溯分析。6. 启动时间裕量低温下启动时间变长启动超时时间要留裕量不要因为启动慢就判定失败。九、实际案例讲几个实际的高低温问题案例方便理解。案例一高温下工业网关随机死机问题某工业网关产品常温下正常55度以上运行2至3小时后随机死机重启后恢复正常。排查过程1. 高温下测电源电压正常纹波在规格范围内。2. 测CPU温度75度在规格范围内CPU规格是-40至85度。3. 用内存测试工具memtester在高温下测试发现有内存读写错误。4. 检查内存型号是消费级LPDDR4X0至70度。产品内部温度达到75度超过了内存的规格上限。5. 换用工业级LPDDR4X-25至85度高温下重新测试内存没有错误系统稳定运行。原因消费级内存的工作温度上限是70度产品内部温度达到75度超过了内存规格高温下内存漏电流增加、时序参数变化导致读写错误系统死机。解决换用工业级内存全温区参数有保证高温下稳定工作。经验工业产品必须用工业级内存不要用消费级。产品内部温度可能比环境温度高10至20度要考虑这个温升。案例二低温下产品无法启动问题某工业HMI产品常温下正常-20度以下无法启动串口无输出。恢复常温后又能正常启动。排查过程1. 低温下测电源发现3.3V电源的上升时间很长约2秒而且纹波很大。2. 检查3.3V电源的输出电容是普通电解电容-25至85度。低温下电解电容的ESR变大、容量下降导致电源启动慢、纹波大。3. 换用陶瓷电容X7R材质作为输出电容低温下重新测试电源启动正常产品正常启动。4. 同时检查晶振是普通消费级晶振0至70度低温下起振时间变长。也换用工业级晶振-40至85度。原因低温下电解电容的ESR变大、容量下降导致电源启动慢、纹波大上电时序不正常系统无法启动。晶振低温下起振慢也是一个因素。解决换用宽温陶瓷电容作为电源输出电容换用工业级晶振。经验工业产品的电源输出电容尽量不用电解电容用陶瓷电容或宽温电解电容。晶振要用工业级。案例三温度循环后BGA虚焊问题某工业控制产品温度循环测试-40至85度50次循环后有10%的板子出现随机死机、重启。常温下测试又正常。排查过程1. 用X射线检查故障板的DDR BGA焊点发现部分焊点有裂纹虚焊。2. 检查PCB是普通FR-4板材Tg130度BGA区域的PCB厚度较薄1.0mm。3. 温度循环时PCB和BGA的热膨胀系数不同PCB变形大导致焊点疲劳裂纹。4. 换用高Tg FR-4板材Tg170度BGA区域PCB加厚到1.6mm重新做温度循环测试100次循环后没有虚焊。原因普通FR-4板材的Tg低温度变化时PCB变形大BGA焊点承受的热应力大温度循环后产生疲劳裂纹虚焊。解决换用高Tg板材BGA区域PCB加厚减少PCB变形对焊点的影响。经验工业产品用高Tg FR-4板材BGA区域的PCB要足够厚减少温度循环下的焊点疲劳。十、总结高低温测试是工业产品必须做的测试也是最容易暴露问题的测试。把高低温测试做好能提前发现设计缺陷、元器件问题、焊接问题确保产品在现场稳定运行。核心要点总结1. 工业产品必须做高低温测试不要只测常温现场环境恶劣常温下正常不代表高低温下也正常。2. 用工业级元器件内存、CPU、电源IC、晶振、电容、连接器等关键元器件都要用工业级温区的型号不要用消费级。这是基础。3. 内存是高低温的重点内存高温下漏电流增加、时序变化、信号质量下降最容易出问题。选工业级内存、经过平台验证的型号做全温区内存测试。4. 电容和晶振是低温的重点低温下电解电容ESR变大、容量下降晶振不起振是低温启动失败的常见原因。用宽温陶瓷电容和工业级晶振。5. BGA焊点是温度循环的重点温度循环下PCB变形BGA焊点容易疲劳虚焊。用高Tg板材、加厚PCB、X射线检查。6. 测试要带负载、长时间、测内部温度不要空载、不要只测启动、不要只看试验箱温度。满负载、长时间运行、测量产品内部温度才能发现真实问题。7. 设计阶段留裕量元器件温度规格留裕量、电源负载留裕量、时序裕量留足、散热设计做好、上电时序留裕量。裕量是高低温稳定性的保障。8. 详细记录测试过程测试条件、过程、结果、异常都要详细记录出问题时才能追溯分析。最后一句话高低温测试不是为了通过测试而是为了发现问题。把问题暴露在实验室比暴露在现场好一万倍。有工业产品高低温测试相关的问题欢迎评论区交流。