FFT 相位差计算DSPF28335(较为精准,±0.1°)

2023电赛C题 LCR测量仪,代码具体为计算幅值和相位差,相位差通过计算峰值时间间隔得到。

DSP-Based Measurement System

下面有原工程下载链接!!!

📐 项目描述: 该设计参考2023年全国大学生电子设计大赛C题,采用 TMS320F28335 制作。普通的 MCU 单片机计算效率低下,因此采用 DSP 完成。显示器件为 LCD1602。

![测量显示图]

 由图片可见,所测结果分别为: VIN2幅值:1.28 VIN1幅值:0.49 相位差:91.53 电容C:9.223nf D值:0.0268 电桥测量103钽电容实际值为: C:9.42nf D值:0.017 综合以上测量结果可见: 所测量的幅值、相位差都很精准,所得电容C的值精确度也较高,但所得D值误差稍大,结合示波器测量结果可以判断,DSP所得数据无误,故误差应由外围测量电路造成,由于所用运放SN10501的非理想特性,会有极小的偏置电流,同时反馈电阻Rf的非理想特性也会导致所测电流大小偏差。故若想提升精度,需要改进测量外围电路,增加补偿电容或者通过大量的测量数据拟合曲线以修正偏差。

总体方案

根据电路基础的知识,一个阻抗两端的电压除以流过其中的电流,就是阻抗值。阻抗包括电阻和电抗。电阻是阻抗的实部,电抗是阻抗的虚部。在交流电压情况下,电抗会使电流波形和电压波形产生相位差。根据阻抗的电学定义,测试到电压和电流,相位差,就可以计算出阻抗。

运放电路中有一个基础单元电路,IV转换电路(电流转电压)。使用这个电路,就可以进行阻抗测量。 

具体步骤

  1. 经过外围电路处理,电流以电压形式体现,再通过DSP的ADC模块分别对待测元件两端的电压 VIN1 和通过待测元件的电流(以电压形式体现) VIN2 进行采样 1024 个点,存至数组后对其进行 FFT 运算,对得到的 VIN1、VIN2 的幅值进行运算:

    • 相位差 α = VIN1 相位 - VIN2 相位
    • 阻抗 Zx = VIN1 / VIN2 * Rf (Rf 为反馈电阻)
  2. 电容计算:

    • Zc = Zx * sin(α)
    • C = 1 / (2 * π * Zc)
  3. 电感计算:

    • Zl = Zx * sin(α)
    • L = 1 / (2 * π * Zl)

FFT 运算参数

  • 采样点数 N:512
  • 采样率 fs:100KHz
  • 待测频率固定为 25kHz,因此 25k / 100k * 512 = 128,所以所测信号对应频率点应该为第 128 点,只需关注第 128 点的幅值。
  • 第 0 点为直流分量。

显示部分

在完成以上计算后,将计算结果显示在 LCD1602 上。

核心设计

  • 核心芯片: TMS320F28335
  • 显示器件: LCD1602
  • 运算放大器: LF347(4个)

设计说明

🔧 电路设计: 借鉴 TIDA-060029 文档中的电路设计,核心思想是 IV 分离电路,但采用了自主平衡阻抗和更优良的补偿机制。

📄 参考文档TIDA-060029 文档

由于现有器件限制,使用的运放为 LF347,刚好4个够用。运放电路较为简单,并未采用补偿机制,但测量精度尚可。由于电路的非理想特性,若不采用补偿机制,只能通过后期 FFT 所得参数进行拟合调教。

硬件组件

  • TMS320F28335: 高性能 DSP
  • LCD1602: 显示模块
  • LF347: 四运放芯片

功能介绍

  • 🌐 高效计算: 采用 DSP 提高计算效率
  • 📊 精确测量: 通过自定义电路实现高精度测量
  • 🖥️ 实时显示: 使用 LCD1602 实时显示测量数据

连接示例

TMS320F28335    LCD1602   LF347
VCC             VCC       VCC
GND             GND       GND
SDA             SDA       -
SCL             SCL       -
...

github链接:pieceofApple/DSPF28335_FFT-: 2023年电子设计大赛国赛C题 (github.com)

(白嫖也别忘了点一个star哦!)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值