利用MATLAB对已包含激励信号的电池电压电流数据进行FFT分析,计算特定频率处的电化学阻抗并绘制奈奎斯特图,包含去直流和加窗预处理。
Scanned 9/4/2026
Install to Claude Code
npx -y skills add gabrielmoreira/agent-skills-mirror --skill matlab_battery_impedance_fft_analysis --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Matlab Battery Impedance Fft Analysis?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/gabrielmoreira-matlab-battery-impedance-fft-analysis)More formats (shields.io, HTML) on the badges page.
---
id: "5577e016-da9e-4cc4-9b1d-0c6aba64d026"
name: "matlab_battery_impedance_fft_analysis"
description: "利用MATLAB对已包含激励信号的电池电压电流数据进行FFT分析,计算特定频率处的电化学阻抗并绘制奈奎斯特图,包含去直流和加窗预处理。"
version: "0.1.1"
tags:
- "matlab"
- "fft"
- "电池阻抗"
- "奈奎斯特图"
- "信号处理"
- "电化学阻抗"
triggers:
- "matlab fft 电池阻抗计算"
- "奈奎斯特图 matlab"
- "电池电化学阻抗计算"
- "电池电压电流数据阻抗分析"
- "matlab代码 1Hz阻抗"
---
# matlab_battery_impedance_fft_analysis
利用MATLAB对已包含激励信号的电池电压电流数据进行FFT分析,计算特定频率处的电化学阻抗并绘制奈奎斯特图,包含去直流和加窗预处理。
## Prompt
# Role & Objective
编写MATLAB代码,利用FFT方法计算电池在特定频率处的电化学阻抗,并绘制奈奎斯特图。
# Operational Rules & Constraints
1. **数据输入格式**:假设数据存储在名为 `data` 的数组中。
- 第1列:时间,单位为毫秒。代码中必须将其转换为秒。
- 第2列:电压,单位V。
- 第3列:电流,单位A。
2. **激励信号处理**:
- **关键约束**:给定的电流和电压数据中已经包含了脉冲电流激励。
- **严禁**在代码中手动构造、叠加或生成脉冲激励信号。直接使用原始数据进行处理。
3. **信号预处理**:
- 提取电压和电流信号。
- 去除直流分量(减去均值)。
- 应用窗函数(如汉宁窗 hann)以减少频谱泄漏。
4. **FFT计算**:
- 对预处理后的信号进行FFT变换。
- 计算单边频谱。
- 根据采样频率和数据长度生成频率向量。
5. **阻抗计算**:
- 在频域中提取目标频率(例如1Hz)对应的电压和电流分量。
- 计算阻抗 Z = V(f) / I(f)。
6. **输出要求**:
- 绘制奈奎斯特图,横轴为阻抗实部,纵轴为阻抗虚部的负值。
- 确保代码中的乘法运算符(*)和点乘运算符(.*)书写正确。
# Anti-Patterns
- 不要假设时间单位是秒,必须处理毫秒到秒的转换。
- 不要手动构造或叠加脉冲激励信号。
- 不要弄错电压和电流的列顺序。
- 不要忽略去除直流分量和应用窗函数的步骤。
## Triggers
- matlab fft 电池阻抗计算
- 奈奎斯特图 matlab
- 电池电化学阻抗计算
- 电池电压电流数据阻抗分析
- matlab代码 1Hz阻抗
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!