acsm单板和编程.pptVIP

  • 16
  • 0
  • 约1.76万字
  • 约 41页
  • 2018-06-30 发布于四川
  • 举报
acsm单板和编程

* * * * * * * * * * * 时域图 正常波形时域图 失真波形时域图 在时域波形上可以对波形的频率、波形峰峰值进行分析,得出准确的测试值。 频域图 正常波形频域图 失真波形频域图 在频域波形上可以对波形的SINAD、SNR、THD进行定量的分析。 RMS,THD,SNR,SINAD定义 RMS:有效值RMS也称为均方根值。正弦量的有效值等于其幅值的 倍。 THD:THD定义为总谐波失真,指谐波信号与有用信号功率之比,通常用dB表示。 将1KHz信号作用到输入端,THD是在2KHz、3KHz、4KHz等整数频点的输出与1KHz频点输出能量的比。 SNR:信噪比。即有用信号与噪声信号功率之比,数值越大,效果越好。通常用dB表示。 SINAD:总谐波失真+信噪比。即有用信号与(噪声信号+谐波信号)功率之比。通常用dB表示。 注意: 1. 测量RMS,THD,SNR,SINAD时,最好采样被测信号的整周期。 2. 为快速傅里叶变换(FFT),采样点数必须是2的整数幂。测量THD,SNR,SINAD时最好采样被测信号的整周期,因此要求输入信号的周期也是2的整数幂。如果条件输入频率f=1KHz,则频率需调整为f=(1000/1024)KHz=0.9765625KHz。如果条件输入频率f=2KHz,则频率需调整为f=(2000/1024)KHz=1.953125KHz 。 3. 测试THD, SNR,SINAD采样点数计算方法: 若在200KHz下采样,则采样间隔为5us,对于输入信号1KHz(周期1ms)的信号来说,采样一个周期所需点数为1ms/5us=200,对于THD,SNR,SINAD来说,一般需采样几个整周期,且采样点数为2的整数幂。建议采样5个周期(1024点)或者10个周期(2048点)。 Programming Reviews(2)-----RMS测试 double adresult[4]={0.0}; int siteID=0; ? //sinewave output: acsm0.ACSDutConnect(); delay_ms(1); acsm0.ACSSineConfig(1, 4.0, 2.0, ACS_FILTER_OFF); //sinewave, Fosc=1KHz,Vpp=4V,Dcoffset=2V, NO ACS filter acsm0.EnableACS(); delay_ms(2); acsm0.ACMLMeaDutAC(LADC_VR_5V, DC_COUPLE,1000, adresult); //low speed mode, sample=1000(5cycle), read RMS for(siteID=0; siteIDSITENUM; siteID++) { RMS-SetTestResult(siteID, 0, adresult[siteID]); } Programming Reviews(3)-----THD测试 double adresult[4]={0.0}; int siteID=0; ? //sinewave output: acsm0.ACSDutConnect(); delay_ms(1); acsm0.ACSSineConfig(0.9765625, 4.0, 2.0, ACS_FILTER_OFF); //sinewave, Fosc=0.9765625KHz,Vpp=4V,Dcoffset=2V, NO ACS filter acsm0.EnableACS(); delay_ms(2); acsm0.ACMLMeaDutTHD(LADC_VR_5V,DC_COUPLE,2048,20,TOTAL_HARM,adresult); //low speed mode, sample=2048, 20 harmonic, read THD for(siteID=0; siteIDSITENUM; siteID++) { THD-SetTestResult(siteID, 0, adresult[siteID]); } Programming Reviews(4)----- 加窗THD的测试 int siteID=0; int j=0; int k=0; int sample=2048; double level[4] ={0.0}; double bhwin[2048] ={0.0}; double fft_result[9000] ={0.0}; double P1[4]={0}; double P3[4]={0}; ? //sinewave output: acsm0.ACSDutConnect();

文档评论(0)

1亿VIP精品文档

相关文档