用Python自动化双脉冲测试

用Python自动化双脉冲测试
2024年10月29日 09:44 一代天浇

电力电子设备中使用的半导体材料正从硅过渡到宽禁带(WBG)半导体,比如碳化硅(SiC)和氮化镓(GaN)等半导体在更高功率水平下具有卓越的性能,被广泛应用于汽车和工业领域中。由于工作电压高,SiC技术正被应用于电动汽车动力系统,而GaN则主要用作笔记本电脑、移动设备和其他消费设备的快速充电器。本文主要说明的是宽禁带FET的测试,但双脉冲测试也可应用于硅器件、MOSFET或IGBT中。

为确保这些设备的可靠性,双脉冲测试(DPT)已发展成为一种行业标准技术,用于测量开启、关闭和反向恢复期的一系列重要参数。双脉冲测试系统包括示波器、信号源和电源,它们必须协同工作进行测试和测量。本应用说明介绍了一个Python脚本示例,该脚本利用示波器和函数发生器的内置双脉冲测试功能,自动执行双脉冲测试。演示脚本以一个工作框架的形式呈现,供寻求实现DPT自动化的工程师使用, 并可通过泰克GitHub获取。

使用Python可以实现全自动测试解决方案,包括:

探头设置配置

通道纠偏配置

直流电流校准(例如罗氏线圈)

垂直刻度设置自动调整

水平刻度设置自动调整

创建测试列表

获取测试结果

测试屏幕/波形保存

用于稳定性分析的可重复测试回路

在本应用文章中,我们会使用5B系列MSO示波器和AFG31000任意函数发生器,在PC上使用Python自动化执行双脉冲测试 (DPT)。应用文章详细概述了Python脚本的流程。演示脚本本身可用作特定远程接口命令的示例,并可针对特定应用进行调整。

示波器配有选件5-WBG-DPT,可提供专用的双脉冲测量,并具备完整的远程接口。在此应用中,可使用4B系列MSO或6B系列MSO代替5B系列MSO。

测试系统

典型的双脉冲测试系统如图2所示,用于测量低侧自动开关参数和时序分析。这种设置需要一个具有四个或更多通道的4B、5B或6B系列MSO。对于DPT开关参数,需要测量低压侧的VDS、ID和VGS ,因此需要三个探头——两个用于电压测量,一个用于电流测量。自动化脚本还可以通过与适当的探头进行高压侧连接来支持高压侧测试。

被测设备 (DUT) 的栅极由AFG31000任意/函数发生器驱动。图2显示了驱动VDD的大电流电源,这是典型的双脉冲测试设置。不过,在这个低电流示例中,使用了吉时利三输出电源为栅极驱动器供电,并提供VDD。示例设置的照片如图3所示。

示波器配备了选件5-WBG-DPT,可提供专用的双脉冲测量和完整的远程接口。示波器中的 WBG 软件还可用于控制AFG31000任意/函数发生器并生成栅极驱动信号。在本示例中,个人计算机、示波器和函数发生器均通过局域网连接(图1)。

图1. 电脑、示波器和函数发生器通过局域网进行通信
图2. 双脉冲测试系统示例的原理图,配置用于对低压侧FET进行测量。如图3所示,本应用文章中的实际设置使用了低电流电源

图3.本应用文章使用的系统包括MSO58B示波器、VDS上的THDP0200高压差分探头、ID上的TCP0030A电流探头、VGS上的TPP1000单端电压探头、用于栅极脉冲的AFG31252函数发生器,以及输出端为栅极驱动器和VDD供电的2230G-30-1三路输出电源

图3显示了示波器、函数发生器和电源与DUT的连接。屏幕截图(图4)显示了示波器上DPT分析软件生成的丰富测量数据:

导通电量,Eon

关断电量,Eoff

峰值电压,Vpeak

峰值电流,Ipeak

开启延时,Td(开启)

关断延时,Td(关闭)

上升时间,Tr

下降时间,Tf

导通时间,Ton

关断时间,Toff

电压转换速率,d/d

死区时间测量虽然不用于此设置,但可用来测量低压侧和高压侧开关之间的时序。

图4. 示波器屏幕截图显示了双脉冲电压和电流波形以及测量结果

测试自动化脚本

本节将介绍Python脚本示例,包括总体流程和组成脚本的功能块。

脚本由四大功能模块组成

示波器和探头初始化

  • 探头通道配置
  • 探头设置配置
  • 示波器初始化和模式设置

示波器垂直设置自动设置

  • 产生脉冲
  • 根据捕捉到的波形调整所有模拟通道的垂直设置

双脉冲测试初始化

  • 测试项目的选择
  • 测试项目配置
  • AFG脉冲创建和连接

双脉冲测试和结果保存

  • 脉冲发生
  • 测试结果的获取和保存

测试流程如下图所示。在演示脚本中,测试参数和测试开关(例如:是否使用自动设置或调整当前通道偏置)在脚本开始时设置为常量,初始化部分结束后,配置仪器,执行测试主循环并生成结果。

功能块说明

如前所述,DPT测试自动化演示脚本由四个功能块组成。本节将解释各功能块的设计理念和操作方法。关于输入参数配置,请参阅脚本开头 ' 用户输入设置 ' 部分的注释。

功能模块1 - 示波器和探头初始化

该功能用于初始化探头和示波器系统。

要测量VDS、ID和VGS,需要两个电压探头和一个电流探头。

探头初始化过程如下:

禁用通道1并从屏幕上删除通道1显示。

1. 启用三个通道(用户在参数设置中定义的两个电压通道和一个电流通道)。

2. 设置电流通道的极性,因为用户可能会因连接错误或其它测试要求而希望翻转电流方向。

3. 根据需要设置替代单位比率,如安培/伏特(例如,使用分流电阻器测量电流时)。

4. 在设置中配置用户定义的通道纠偏参数。

示波器初始过程如下:

1. 如果用户自定义设置 'rst_scope_ena ' 被设为1,则恢复默认设置。

2. 启用高分辨率模式,提供更精确的测量能力。

3. 将水平设置模式切换为手动模式,根据测试要求设置采样率和记录长度。

4. 根据用户定义的脉冲设置输入计算所需的采样率。

5. 根据用户定义的值设置触发位置。如果用户定义的值小于0,则使用默认值25,即屏幕上25%的水平位置。

6. 将触发类型设为边沿触发。

7. 将触发源设置为VGS通道输入。

8. 将触发模式设置为正常和单次触发。

9. 开始采集。

功能模块2 - 示波器垂直设置和自动设置

如果通过将用户定义参数 'autoset_vertical_ena ' 设为1打开了垂直自动设置功能,则将启用自动设置功能,并根据输入信号幅度自动调整垂直刻度和偏置。

如果禁用自动设置功能,则所有三个通道的垂直刻度设置都将使用参数输入界面进行用户定义垂直设置。所有三个通道都有自己的子开关切换,可分别独立启用/禁用每个通道的自动设置。

三个通道的垂直刻度自动设置步骤相同。

详细的自动设置步骤如下:

1. 根据用户定义的输入信号幅度初始化通道刻度,例如,Vgs为 'vgs_amplitude',Vds为 'vds_amplitude',Id为'id_amplitude'。

2. 将自动设置进程状态标志设置为0并启动循环。当标志到达3时,当前通道的自动设置完成,循环将停止。

3. 添加 'WBGEON' 测量项目,并在测试项目中配置AFG以产生脉冲。

4. 启用输入通道的最大和最小测量功能,并将标志设置为1。

5. 获取当前垂直设置以及通道输入信号的最小和最大测量值。

6. 使用用户定义的 'vertical_autoset_ratio' 快速收敛输入信号的幅度到有效通道测量范围,并将标志设置为2。

7. 继续获取当前垂直分辨率以及通道输入的最小值和最大值。微调通道刻度和偏置,以满足用户定义的误差范围。

8. 编程设置并继续执行相同的程序,直到达到用户定义的目标误差范围。标志将设置为3,自动设置完成。

9. 删除测量项目并结束循环。

在本应用示例中,脚本包含用于设置垂直刻度设置的代码。不过,使用WBG-DPT软件包中的预置功能通常会更方便。WBG-DPT预置简化了自动设置程序。它使用用户指定的双脉冲设置来预设示波器的最佳垂直、水平、触发和采集设置。预置后,只需从WBG-DPT测量面板运行栅极激励,即可让AFG31000生成双脉冲输出。

功能模块3 - 双脉冲测试初始化

1. 将所有测试项目添加到测试列表中。演示脚本支持以下测量。

WBGEON ---- 导通电量(Eon)

WBGEOFF ---- 关断电量 (Eoff)

WBGVPEAK ---- Vds(峰值):发射极至集电极电压

WBGIPEAK ---- Id( 峰值 )

WBGTDON ---- td(on) - 导通延时时间

WBGTDOFF ---- td(off) - 关断延时时间

WBGTR ---- Tr - 上升时间

WBGTF ---- Tf - 下降时间

WBGTON ---- t(on) - 导通时间

WBGTOFF ---- t(off) - 关断时间

WBGDDT ---- WBGDDTdv/dt和di/dt

可根据用户需求和脚本修改支持更多测试项目。

2. 为每个测试项目设置信号源。

3. 将设置写入AFG以生成测试脉冲。请注意,5B系列MSO固件V2.6.38要求通过WBG命令发送的AFG设置与最后配置的测量相关联。

功能模块4 - 双脉冲测试和保存结果

1. 发送触发命令 'WBGGSTIM',启动测试循环并产生脉冲。

2. 等待采集完成。

3. 通过命令行读取并显示全部11个项目的测试结果。

4. 如果 'remote_table_save_ena' 设置为1,则测试结果表将保存到示波器上的文件中。

5. 如果 'remote_screen_save_ena' 设置为1,屏幕截图将保存到示波器上的文件中。

6. 如果 'remote_wfm_save_ena' 设置为1,波形将被保存到示波器上的文件中。

7. 如果 'remote_session_save_ena' 设置为1,会话将被保存到示波器上的文件中。

8. 如果 'local_wfm_save_ena' 设置为1,波形将被保存到运行Python脚本的PC上的文件中。

9. 如果 'local_table_ save_ena' 设置为1,测试结果表将保存到运行Python脚本的计算机上的文件中。

10. 重复测试,直到达到用户定义的循环次数。

11. 释放内存并结束测试。

原文链接:https://www.eeworld.com.cn/Test_and_measurement/eic681372.html

财经自媒体联盟更多自媒体作者

新浪首页 语音播报 相关新闻 返回顶部