02:29\\\\\\\\\\\\\\\\r\\\\\\\\\\\\\\\\nGP8500的精度测量

 

01 GP8500功能测试


一、前言

  前几天测试了这款PAC 芯片, GP8500。 测试结果并没有能够成功, 后来经过朋友提示,  加上对原来测试小板的测量, 发现的确是 芯片的使能没有设置正确。  使能端与 VCC 短路了。 下面对其进行修正之后, 重新进行测量。

GM1711867139_1920_1080.MP4|_-4

二、测试结果

  将焊接之后的电路板放置在面包板上测试,  使用DG1062提供 10kHz 的 PWM 信号。   在 芯片第3 管脚输入PWM信号。 工作电源 5V,   参考电源控制信号为 5V,  对应内部的2.5V参考电压。  从 接口第6管脚输出转换电压信号。

GM1711867813_1920_1080.MP4|_-8

  下面通过 Python 编程,  控制 DG1062 输出 PWM 的占空比从 1% 逐步变化到 99%,  测量 GP8500的输出电压,   测量一下对应的线性关系。  可以看到输出的电压线性上升到 2.5V 左右。 线性度非常好。

GM1711868410_1920_1080.MP4|_-5

▲ 图1.2.1 测量输出电压与占空比

▲ 图1.2.1 测量输出电压与占空比

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# TEST1.PY                     -- by Dr. ZhuoQing 2024-03-31
#
# Note:
#============================================================

from headm import *
from tsmodule.tsvisa        import *

dm3068open()
dg1062open(109)

#------------------------------------------------------------

ddim = linspace(1, 99, 99)
vdim = []

for d in ddim:
    dg1062duty(2, d)
    time.sleep(1.5)
    v = dm3068vdc()
    vdim.append(v)

    printff(d, v)
    tspsave("PL8500", ddim=ddim, vdim=vdim)

plt.plot(ddim, vdim, lw=3)

plt.xlabel("Duty(%)")
plt.ylabel("Voltage(V)")
plt.grid(True)
plt.tight_layout()
plt.show()



#------------------------------------------------------------
printf("\a")



#------------------------------------------------------------
#        END OF FILE : TEST1.PY
#============================================================
ddim=[1.0000,2.0000,3.0000,4.0000,5.0000,6.0000,7.0000,8.0000,9.0000,10.0000,11.0000,12.0000,13.0000,14.0000,15.0000,16.0000,17.0000,18.0000,19.0000,20.0000,21.0000,22.0000,23.0000,24.0000,25.0000,26.0000,27.0000,28.0000,29.0000,30.0000,31.0000,32.0000,33.0000,34.0000,35.0000,36.0000,37.0000,38.0000,39.0000,40.0000,41.0000,42.0000,43.0000,44.0000,45.0000,46.0000,47.0000,48.0000,49.0000,50.0000,51.0000,52.0000,53.0000,54.0000,55.0000,56.0000,57.0000,58.0000,59.0000,60.0000,61.0000,62.0000,63.0000,64.0000,65.0000,66.0000,67.0000,68.0000,69.0000,70.0000,71.0000,72.0000,73.0000,74.0000,75.0000,76.0000,77.0000,78.0000,79.0000,80.0000,81.0000,82.0000,83.0000,84.0000,85.0000,86.0000,87.0000,88.0000,89.0000,90.0000,91.0000,92.0000,93.0000,94.0000,95.0000,96.0000,97.0000,98.0000,99.0000]
vdim=[0.0278,0.0527,0.0781,0.1029,0.1281,0.1524,0.1769,0.2024,0.2273,0.2523,0.2787,0.3033,0.3292,0.3541,0.3790,0.4034,0.4281,0.4519,0.4767,0.5014,0.5270,0.5520,0.5768,0.6016,0.6272,0.6531,0.6787,0.7038,0.7289,0.7545,0.7785,0.8035,0.8287,0.8533,0.8787,0.9039,0.9287,0.9539,0.9784,1.0036,1.0284,1.0510,1.0762,1.1009,1.1260,1.1509,1.1761,1.2015,1.2267,1.2516,1.2766,1.3008,1.3263,1.3506,1.3756,1.4007,1.4262,1.4514,1.4755,1.5003,1.5254,1.5510,1.5761,1.6010,1.6253,1.6505,1.6759,1.7009,1.7259,1.7509,1.7764,1.8008,1.8256,1.8507,1.8752,1.9005,1.9254,1.9504,1.9754,1.9996,2.0246,2.0494,2.0743,2.0989,2.1239,2.1485,2.1737,2.1995,2.2238,2.2483,2.2734,2.2981,2.3241,2.3483,2.3741,2.3997,2.4258,2.4544,2.4826]

  在输出线性精度方面, 从测量的数据计算出线性拟合误差。  可以看到大部分情况下, 线性误差都在正负 2mV 之内。  只是在最后, 占空比大于 95%之后, 拟合误差达到了 8mV。 相对于 2.5V 的输出电压范围来说, 这款 GP8500芯片的精度达到了 千分之一。
GM1711868664_1920_1080.MP4|_-3

▲ 图1.2.2 线性拟合误差

▲ 图1.2.2 线性拟合误差

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# TEST2.PY                     -- by Dr. ZhuoQing 2024-03-31
#
# Note:
#============================================================

from headm import *
from scipy.optimize        import curve_fit

ddim, vdim = tspload('PL8500', 'ddim', 'vdim')


def linefun(x, a, b):
    return a*x + b

param = (1e-2, 0)
param, conv = curve_fit(linefun, ddim, vdim, p0=param)
printf(param)

vfit = linefun(ddim, *param)

err = [(v1-v2)*1e3 for v1,v2 in zip(vdim, vfit)]
plt.plot(ddim, err, lw=3)

plt.xlabel("Duty(%)")
plt.ylabel("Error(V)")
plt.grid(True)
plt.tight_layout()
plt.show()






#------------------------------------------------------------
#        END OF FILE : TEST2.PY
#============================================================

  将 GP8500的 REFEN 置低, 对应的输出电压范围是 VCC, 也就是5V。 重新测量对应的 占空比与 输出电压之间的关系。 可以看到此时输出电压范围是 5V。   线性拟合误差为 正负 4mV。 线性精度也超过了 千分之一。
GM1711869097_1920_1080.MP4|_-2

▲ 图1.2.3 REFEN=0对应的DUTY和OUT

▲ 图1.2.3 REFEN=0对应的DUTY和OUT

ddim=[1.0000,2.0000,3.0000,4.0000,5.0000,6.0000,7.0000,8.0000,9.0000,10.0000,11.0000,12.0000,13.0000,14.0000,15.0000,16.0000,17.0000,18.0000,19.0000,20.0000,21.0000,22.0000,23.0000,24.0000,25.0000,26.0000,27.0000,28.0000,29.0000,30.0000,31.0000,32.0000,33.0000,34.0000,35.0000,36.0000,37.0000,38.0000,39.0000,40.0000,41.0000,42.0000,43.0000,44.0000,45.0000,46.0000,47.0000,48.0000,49.0000,50.0000,51.0000,52.0000,53.0000,54.0000,55.0000,56.0000,57.0000,58.0000,59.0000,60.0000,61.0000,62.0000,63.0000,64.0000,65.0000,66.0000,67.0000,68.0000,69.0000,70.0000,71.0000,72.0000,73.0000,74.0000,75.0000,76.0000,77.0000,78.0000,79.0000,80.0000,81.0000,82.0000,83.0000,84.0000,85.0000,86.0000,87.0000,88.0000,89.0000,90.0000,91.0000,92.0000,93.0000,94.0000,95.0000,96.0000,97.0000,98.0000,99.0000]
vdim=[0.0537,0.1035,0.1544,0.2039,0.2539,0.3028,0.3518,0.4028,0.4523,0.5014,0.5537,0.6031,0.6559,0.7067,0.7570,0.8061,0.8556,0.9033,0.9531,1.0034,1.0553,1.1056,1.1551,1.2044,1.2549,1.3060,1.3561,1.4059,1.4554,1.5063,1.5540,1.6040,1.6541,1.7032,1.7540,1.8044,1.8542,1.9044,1.9533,2.0036,2.0533,2.0986,2.1490,2.1984,2.2486,2.2984,2.3487,2.3996,2.4498,2.4997,2.5498,2.5983,2.6492,2.6979,2.7477,2.7979,2.8488,2.8993,2.9478,2.9973,3.0475,3.0987,3.1488,3.1985,3.2470,3.2976,3.3482,3.3981,3.4477,3.4983,3.5490,3.5979,3.6474,3.6973,3.7469,3.7975,3.8474,3.8970,3.9472,3.9959,4.0459,4.0952,4.1451,4.1943,4.2446,4.2940,4.3436,4.3958,4.4439,4.4937,4.5433,4.5931,4.6448,4.6927,4.7441,4.7937,4.8429,4.8933,4.9426]

▲ 图1.2.4 线性拟合误差

▲ 图1.2.4 线性拟合误差

 

  结 ※


  文记录了 GP8500的特性测量。  修改了前几天测量电路板中存在的短路故障,  GP8500输出电压的线性精度超过了 千分之一。  下一步, 准备使用单片机来测量 GP8500的动态过程。

GM1711869235_1920_1080.MP4|_-4

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐