振动传感器 · 数据采集与分析
🚴 30章 完整路径
1
课程导论
共享单车振动传感器的应用场景、课程目标与学习路径、所需硬件与软件清单
2
传感器基础
振动传感器的工作原理(压电式、MEMS式)、关键参数(灵敏度、频率响应)、选型指南
3
硬件搭建
Arduino/ESP32开发板介绍、振动传感器与开发板的接线方法、电源与布线注意事项
4
数据采集入门
使用Arduino IDE读取传感器模拟信号、串口监视器查看原始数据、理解ADC转换
5
数据格式化
将原始电压值转换为物理量(加速度单位g)、数据帧结构设计(时间戳+数值)、CSV格式输出
6
Python环境搭建
Anaconda安装与虚拟环境配置、Jupyter Notebook使用、必备库安装(pandas, matplotlib, numpy)
7
数据读取与清洗
使用pandas读取CSV文件、处理缺失值与异常值、数据重采样与对齐
8
数据可视化基础
使用matplotlib绘制时域波形图、添加标题/标签/网格、多子图对比显示
9
时域特征提取
计算均值、方差、峰值、峰峰值、均方根值(RMS),理解这些特征的物理意义
10
频域分析入门
傅里叶变换(FFT)原理简介、使用numpy进行FFT计算、绘制频谱图
11
频谱特征提取
识别主频、幅值谱与功率谱密度(PSD)、频带能量计算
12
时频分析
短时傅里叶变换(STFT)原理、使用scipy实现STFT、绘制时频谱图(热力图)
13
滤波技术
低通/高通/带通滤波器设计(巴特沃斯)、使用scipy.signal进行滤波、滤除噪声实战
14
数据分段与加窗
滑动窗口分割数据、窗函数(汉宁窗、海明窗)的作用与实现、重叠窗口策略
15
特征工程综合
构建特征矩阵(时域+频域+时频域)、特征标准化与归一化、特征重要性初探
16
机器学习入门
监督学习与无监督学习概念、scikit-learn库简介、训练集/验证集/测试集划分
17
分类模型实战(一)
K近邻(KNN)算法原理、使用振动特征进行路面平整度分类(平整/颠簸)
18
分类模型实战(二)
支持向量机(SVM)原理、核函数选择、模型调参与评估(准确率/召回率)
19
分类模型实战(三)
决策树与随机森林、特征重要性排序、模型可解释性分析
20
聚类分析
K-Means聚类算法、使用振动数据识别不同骑行模式(匀速/加速/减速/颠簸)
21
异常检测
孤立森林(Isolation Forest)算法、检测传感器故障或异常振动事件、可视化异常点
22
回归分析
线性回归与多项式回归、预测骑行速度与振动强度的关系、模型评估(R²/MSE)
23
时间序列预测
ARIMA模型简介、使用历史振动数据预测未来趋势、差分与平稳性检验
24
深度学习入门
PyTorch/TensorFlow环境搭建、全连接神经网络(FCN)结构、训练一个简单的振动分类器
25
卷积神经网络(CNN)
1D-CNN原理、适用于振动信号的网络结构设计、模型训练与验证
26
模型部署
将训练好的模型导出为ONNX格式、在树莓派/边缘设备上部署、实时推理流程
27
数据可视化进阶
使用Plotly绘制交互式图表、动态仪表盘设计(Dash框架)、实时数据流展示
28
综合项目(一)
搭建完整的采集-分析-展示系统、硬件端代码优化、数据上云(MQTT/HTTP)
29
综合项目(二)
云端数据存储(InfluxDB)、后端API开发(Flask/FastAPI)、前端展示页面
30
课程总结与展望
常见问题与解决方案、行业应用案例分享、进阶学习资源推荐