MI1062六合一多功能组合仪器

示波器触发测量捕捉干扰

电机控制系统在启动时,经常会发生控制板死机等异常现象,现场情况如下图所示。为了找出问题原因,使用MI1062对该电机系统的启动和运行过程进行分析。本案例将着重分析控制板电源在电机启动过程中的干扰情况。

测量前示波器配置

测试前示波器配置启用MI1062的示波器通道1,通过“自动量程”功能配置好示波器的水平和垂直系统,设置好信号的触发参数,主要包括触发模式、触发电压、触发边沿等。

干扰信号测量

下图是MI1062示波器基于触发功能,记录设备电源在启动过程中的波形。发现主板电源在启动过程中受到了严重的冲击干扰,致使控制器外部引脚受到干扰,出现死机等现象,长期受到这样的冲击将会导致器件损坏。

解决方案

电机启动时的干扰主要是电刷和换向器之间的火花放电。消除干扰方法有多种,建议使用滤波器、并联大容量电容或者使用隔离电源改善主板供电。

示波器和逻辑分析仪联合调试串口

串口是最常用的串行通信接口,当串口无法通信、数据错误、数据丢失时可以用MI1062的示波器与逻辑分析仪进行组合式测量。

使用示波器测试信号波形

使用示波器的探头连接到串口的发送(TXD)和接收(RXD)线上,观察到如下图所示的信号波形,同时对信号幅值测量,对信号质量评估。如果信号峰峰值小于3V说明欠幅,纹波多说明干扰较多,信号出错概率很高。

串口波形幅值测量

使用逻辑分析仪抓取信号时序

通过MI1062的逻辑分析仪可以准确抓取到串口上信号波形的时序关系,分析传输波特率,数据位数,停止位数等信息,核对是否与软件配置的通信参数一致。经过实测得到被测接口信号波特率为9600bps,数据发送使用8-N-1模式,如下图所示。

串口波特率为9600bps数据为8-N-1模式

协议分析仪解析成真实数据

通过协议解析功能将原始的逻辑编码转换成16进制数据或字符显示确定是否与程序发出的数据相符合,如下图所示。如果不符合则说明数据在传输时受干扰信号出错

解码后数据“Hello,World!”

解决方案

当没有检测到信号波形时建议首先排查电路连接和单片机控制程序,若发现信号干扰,则应该考虑将通信布线远离干扰源,测量到信号欠幅则应采取缩短布线距离或更换导电性能更佳的线缆去解决问题,总线波特率偏差可能是系统时钟不准,应该考虑更换时钟。

示波器和逻辑分析仪联合调试I2C通讯

I2C是嵌入式领域最常用的串行通信接口之一,读写时序较复杂,调试时常因时序问题导致通讯不畅。

示波器和逻辑分析仪测试信号波形与逻辑

调试时将示波器和逻辑分析仪的探头同时连接MCU的I2C信号线,同时打开MI1062示波器和逻辑分析仪,示波器用于观察波形,逻辑分析仪用于观察逻辑信号。

示波器和逻辑分析仪联合调试

先观察示波器窗口,排查I2C是否有信号输出,信号幅值是否正确,有无过冲信号等。然后使用逻辑分析仪抓取总线上的逻辑波形,排查时序是否存在问题。下图是I2C信号时序,测量时序准确性时可以添加测量标尺辅助测量,精确定位时序问题。

I2C接口逻辑波形

协议分析仪解析成真实数据

为了进一步验证通信接口的正确性,打开逻辑分析仪的协议分析插件,对I2C总线信号执行解码分析。I2C信号解码结果如下图所示,读写过程体现的一目了然,方便用户对比解码数据和发送数据一致性。

I2C协议解码后的情况

示波器和逻辑分析仪联合调试SPI通讯

在调试MCU的SPI接口时,偶尔发现通信不成功的情况,为了找出问题原因,使用MI1062抓取了数字信号和模拟信号进行对比分析。

逻辑分析仪测试信号逻辑

启动MI1062逻辑分析仪功能,将逻辑分析仪的探头和被测信号连接,抓取通信线缆上的逻辑波形,为了直观观察逻辑信号所对应的协议数据,通过添加协议分析插件就马上得到解码后的数据,如下图所示。

SPI逻辑信号时序和编码分析

示波器分析信号质量

为了更进一步去了解SPI底层信号质量,使用示波器的触发功能对波形进行记录和分析,得到了如下图的波形图。从图中可以看出时钟信号中存在明显的信号过冲,它是引起通信错误的重要原因。

SPI波形测量

码型发生器应用于数码管与液晶调试

码型发生器可以根据测试需要,设置输出特定编码信号,驱动电路运行。如用于数码管、LM1602/12864液晶等调试。下面以共阴四位八段数码管(LN3461AS)为例,通过MI1062码形发生功能,使之显示出“ 0123”和“ 4567”,更换时间间隔设置为1s。

打开码型发生器,然后建立如下图所示的段码与位选数据线的定义(要与硬件连接相对应)。没有显示数码管的“小数点”,所以将“dp”数据线的数据始终设为低电位。

码型发生器

设置系统参数,设置内部时钟频率599.9Hz,输出电平选择3.3V,如下图所示。

时钟信号

点击下载运行键,将会出现如下图所示的现象。

数码管测试

码型发生器和示波器联合调试数模转换电路

ADC(模数转换)和DAC(数模转换)是应用最广泛的电路。计算机只能处理数字信号,所以需要通过ADC来将模拟信号变成数字,处理完成之后就需要通过DAC将数字信号转成模拟信号输出。MI1062可通过码型发生器输出数字信号控制DAC输出模拟信号波形。

码型发生器输出数字逻辑给DAC

以典型的DAC芯片——DAC0832为例,根据DAC0832的控制时序,设置码型发生器波形输出逻辑如下图所示,点击码型发生器的“运行”按钮,码型发生器就开始循环输出码形信号驱动DAC工作。

编辑输出逻辑

示波器测量DAC输出的模拟信号

用数字示波器的探头连接到DAC0832的信号输出端和AGND引脚,就可以观察到模拟端的输出的信号波形如下图所示,它是一个锯齿波。

输出锯齿波信号

示波器自动测量分析PWM信号

PWM(脉宽调制)信号是最常用的开关控制信号,主要用于开关电源,驱动器,舵机转角控制等场合,占空比、幅值、频率都是PWM控制的关键参数。控制信号不输出或者不准确会导致异常情况。

为了快速测量和调试PWM输出,使用示波器的自动测量功能可以快速测量出信号占空比、频率、幅值、过冲、峰峰值等多个参数。

打开示波器的参数自动测量功能,选择必要的测量项,包括频率、占空比和幅值如下图所示。

自动测量项目

启动参数自动测量后就得到如下图所示的测量值,勾选的测量项目均已测出。通过测量值可以确定当前输出信号是否已经达到控制要求,当存在控制偏差时,它也能为调试人员提供有用的调试参考信息

参数自动化测量

FFT分析查找干扰频率

FFT(傅里叶变换)功能可以将时域信号变换到频域内去分析,这样就可以观察到被测信号的频率分布。

观察受干扰的信号波形

用通过MI1062的数字示波器观察到如下图所示的方波信号,可见受干扰程度严重,实际应用中常发生通信错误,为了找出干扰源,直接使用FFT功能做频域分析。

被干扰的方波

利用FFT分析排除干扰源

利用MI1062的FFT功能进行频谱分析,得到如下图所示的频率分布图,从中观察到2MHz、4MHz、6MHz、8MHz等存在明显的干扰。

FFT干扰信号频率分析

经过查找发现信号传输电缆旁边有一个无线发射设备,发射频率1MHz左右,以偶次谐波方式输出干扰。关掉设备之后干扰信号立即就消失了,如下图所示

关闭干扰源后的波形

示波器和信号发生器联合测量总线分布电容

为了保证总线信号的完整性和系统通信的可靠性,总线分布式电容必须控制在一定的范围以内。CAN总线是目前应用最广泛的现场总线之一,汽车电子领域中几乎全部通信都是基于CAN,下面以此为例介绍分布式电容的测量方法。

CAN总线包括CANH和CANL两条线,之间存在差分电容Cdiff(Cdiff 要求小于90pF)和单条线缆对地电容Cin(Cin 要求小于150pF)。这两个取值必须达到允许条件方可应用于汽车。这两个参数的测量需要同时用到示波器和信号发生器。

分布式电容测量方法

测试的原理如下图所示,测试时MI1062的数字示波器和信号发生器都必须同时接在测试点上。信号发生器发出方波信号,利用示波器上升沿触发显示总线间电容的充放电曲线。总线分布式电容在充电后会有一个短暂的放电时间,放电曲线示意图如充放电计算电容原理图所示。

总线差分电容测试原理图

首先使用总线对地电容测试原理图所示的原理测试总线单边对地的电容。在信号发生器在输出方波信号后,通过示波器观察到如充放电计算电容原理图的电容充放电曲线图,并利用示波器测量出从Vcan放电到0.37*Vcan时经历的时间t。

CAN总线信号实际波形

充放电计算电容原理

计算总线分布式电容

利用电容充放电计算公式:

V0.37can=Vcan*exp(-t/(R*Csetup))

其中R 为串联的充放电电阻,t 为放电时间,Vcan 和V0.37can(等于0.37*Vcan)都是已知的,所以就能计算出Csetup,于是可以得到:

Cin=Csetup/2.

使用类似的方法可以测量出图2.22所示的两个测试点之间的电容Csetup2,为测量的电容是Cdiff和Cin的和,所以计算Cdiff的公式:

Cdiff=Csetup2-Cin

分布式电容的存在会严重影响传输信号质量,为了保证通信稳定性和可靠性,通信总线对分布式电容值均有强制上限要求。本案例全面介绍了MI106 2测量CAN总线分布式电容方法和原理。在实际应用中,MI1062还可用于测量Flexray、RS-485、RS-232等总线分布式电容,这对于保证总线通信可靠性具有重要意义。