
2021年A题-信号失真度测量装置
简介
本作品设计实现了放大失真小信号的信号处理电路为核心的周期信号的失真度测量装置。作品可在串口屏幕上实时显示信号周期、THD测量值和归一化幅值,并通过ESP32-WIFI模块同步显示在手机终端。
简介:本作品设计实现了放大失真小信号的信号处理电路为核心的周期信号的失真度测量装置。作品可在串口屏幕上实时显示信号周期、THD测量值和归一化幅值,并通过ESP32-WIFI模块同步显示在手机终端。开源协议
:Public Domain
描述
项目简介
本作品设计实现了放大失真小信号的信号处理电路为核心的周期信号的失真度测量装置。首先采用分级放大偏置实现对范围内任意幅度正负压信号的采集,进而利用FFT算法进行频谱分析;采用MSP432P的14位ADC的DMA模式完成了对失真信号采样,通过FFT变换实现对高次谐波幅度的测量;并设计有FIR数字滤波滤除基波对谐波进行单独放大的方案提高总谐波失真(THD)测量精度。作品可在串口屏幕上实时显示信号周期、THD测量值和归一化幅值,并通过ESP32-WIFI模块同步显示在手机终端。实测表明本作品能够测量10mv-600mv,1kHz-150kHz的失真信号,THD测量相对误差小于3%。实现了基础功能和拓展功能,并在拓展功能的基础上拓宽了最大可测频率。
项目要求
~~~~
项目功能介绍
项目的相关功能的介绍和简介,如:
- 放大器部分均采用低温漂固定电阻,以保证系统稳定性;
- 采用高共模抑制比和低噪声高带宽运放,降低信号处理带来的失真;
- 接头采用SMA,降低外界环境干扰
- pcb设计时采用铺铜加缝合孔的设计,进一步降低环境干扰
- 对电源进行LC滤波后再给设备供电,保证供电电压稳定性
- FFT算法进行加窗,adc采样值进行软件滤波,降低测量误差
电路讲解
输入信号先经过同相比例放大电路,在经过一个直流偏置器,将输入信号调整到adc可以采集的范围,再送入msp432单片机进行adc采集后进行FFT,经过软件滤波,加窗,以及数据拟合后送到串口屏显示。
软件
//###########################################################################
//
// FILE: adc.c
//
// TITLE: C28x ADC driver.
//
//###########################################################################
// $Copyright: $
//###########################################################################
#include "adc.h"
//*****************************************************************************
//
// Defines for locations of ADC calibration functions in OTP for use in
// ADC_setMode() ONLY. Not intended for use by application code.
//
//*****************************************************************************
//
// The following functions calibrate the ADC linearity. Use them in the
// ADC_setMode() function only.
//
#define ADC_calADCAINL 0x0703B4U//adc寄存器地址
#define ADC_calADCBINL 0x0703B2U
#define ADC_calADCCINL 0x0703B0U
#define ADC_calADCDINL 0x0703AEU
//
// This function looks up the ADC offset trim for a given condition. Use this
// in the ADC_setMode() function only.
//
#define ADC_getOffsetTrim 0x0703ACU
//*****************************************************************************
//
// ADC_setMode
//
//*****************************************************************************
void
ADC_setMode(uint32_t base, ADC_Resolution resolution,
ADC_SignalMode signalMode)
{
//
// Check the arguments.
//
ASSERT(ADC_isBaseValid(base));
//
// Check for correct signal mode & resolution. In this device:
// Single ended signal conversions are supported in 12-bit mode only
// Differential signal conversions are supported in 16-bit mode only
//
if(signalMode == ADC_MODE_SINGLE_ENDED)//开启规则转换模式
{
ASSERT(resolution == ADC_RESOLUTION_12BIT);
}
else
{
ASSERT(resolution == ADC_RESOLUTION_16BIT);//使用16位adc采集
}
电路原理图以及pcb
如图为直流加法器,将信号整体加入一个直流偏置。
高带宽低噪声放大器原理图及pcb
直流偏置器
来源:自制,工程文件已上传
以下为实物图
1.高带宽低噪声放大器(加上了屏蔽罩)
来源:淘宝购买 电路为同相比例放大,选用OPA1611为放大器芯片可自制
主控MSP432P401R
来源:TI官网申请
各模块连接关系:将电源与各个模块连接后,信号经过高带宽低噪声放大器后进入直流偏置器,再送入adc采集,通过傅里叶变换处理后,经主控芯片控制将数据发送到串口屏显示。
实物装配图
演示视频
https://www.bilibili.com/video/BV1xL4y1E75W?share_source=copy_web
注意事项
1.供电电压为+-5V
2.等待wifi连接手机app后开启工作
设计图
BOM
ID | Name | Designator | Footprint | Quantity |
---|---|---|---|---|
1 | C型钽电容 | C1,C2 | C____ | 2 |
2 | 104 | C3,C4 | 0805 | 2 |
3 | Hole | H?,H?,H?,H? | HOLE100MILE | 4 |
4 | SMA | INPUT1,OUTPUT | SMA_1 | 2 |
5 | LED | LED1,LED2 | LED0805 | 2 |

评论