From 52402c8e6e60b6436e2640d52ef736115722f6a7 Mon Sep 17 00:00:00 2001 From: CaoWangrenbo Date: Fri, 12 Apr 2024 18:54:16 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E7=BD=91=E7=BB=9C=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E9=80=89=E6=8B=A9=E9=83=A8=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.adoc | 49 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/main.adoc b/main.adoc index 59bb024..b6dfe6e 100644 --- a/main.adoc +++ b/main.adoc @@ -1,4 +1,5 @@ = 基于 MEMS 和 CNN 的边缘计算振动检测节点 +// 基于 MEMS 和 CNN 的振动筛工况检测设备 曹王仁博 2024.03.11 :toc: auto @@ -28,6 +29,8 @@ Keywords: vibration monitoring, edge computing, CNN, MEMS ==== 振动信号采集监测设备研究现状 + + ==== 边缘计算技术研究现状 === 当前存在的主要问题 @@ -436,11 +439,55 @@ X[k+N/2]=A[k]-W_{N}^{k}B[k],k=0,1,\ldots,\frac{N}{2}-1 ==== 基于 Keras 的 CNN 训练过程 +//选用 2D-CNN 的原因 +===== 神经网络类型的选取 +本设计针对的设备振动模型,主要特征为同一工况下振动波形比较稳定,呈现较强的周期性。在功能需求上看,主要需要完成的是三轴加速度计数据到各类工况的置信度的映射,属于较为典型的时间序列分类模型,典型应用为人类活动识别 (HAR)。 + +传统上,这类时间序列分类任务主要依靠信号处理领域的方法来处理数据,这种方式需要具有该领域较强的专业知识,并且严重依赖于启发式的特征提取(例如传统上电机利用振动数据进行故障辨识的方式)。传统方法只能提取浅层特征,从而导致无人监督和增量任务的性能下降,导致模型的准确性和泛化能力较差。 + +//Reference: J. Wang, Y. Chen, S. Hao, X. Peng 和 L. Hu, 《Deep learning for sensor-based activity recognition: A survey》, Pattern Recognition Letters, 卷 119, 页 3–11, 3 月 2019, doi: 10.1016/j.patrec.2018.02.010. + +当前使用深度学习方法实现时间序列分类的方法中,主要提出了基于循环神经网络 (RNN)、长短期记忆网络 (LSTM)、卷积神经网络 (CNN) 的独立、组合或者变体形式搭建的网络结构。就各网络特征而言,循环神经网络和长短期记忆网络适合识别具有自然顺序的短期活动,而卷积神经网络能够提取数据中的深层特征,更适合具有稳定特征的长期活动。对于本设计而言,考虑到部署设备的计算能力和运行空间有线,仅采用顺序结构的卷积神经网络 (CNN) 进行验证测试。 + +对于进行时间序列分类的卷积神经网络而言,普遍上使用一维卷积神经网络 (1D-CNN)。在同等构型上,一维卷积神经网络的计算复杂度明显低于传统的二位卷积神经网络,并且具有更少的参数,更容易训练和部署推理。所以目前应用上,大多将一维的处理后的时间序列使用一维卷积神经网络处理,如果存在多个输入值(如采用三轴加速度计作为数据源),会将其并行的作为多个通道输入。在卷积过程中,多个通道相互独立,输入卷积层的通道个数也等于卷积层输出的通道个数。 + +而在一些研究中提出将多个输入值堆叠成信号图像并送入二维卷积神经网络中 (2D-CNN),在信号图像中,每个信号序列都有机会与其他序列相邻,这使得 CNN 能够提取相邻信号之间的隐藏相关性。该方法应用于人类活动识别 (HAR) 中,提出了一种使用陀螺仪、总加速度和线性加速度信号作为输入的 DCNN。footnote:[W. Jiang 和 Z. Yin, 《Human Activity Recognition Using Wearable Sensors by Deep Convolutional Neural Networks》, 收入 Proceedings of the 23rd ACM international conference on Multimedia, 收入 MM’15. New York, NY, USA: Association for Computing Machinery, 10 月 2015, 页 1307–1310. doi: 10.1145/2733373.2806333.] + +在另一些研究中,直接将单轴的原始数据分成相等的长度,并拼合成一幅图像送入卷积神经网络中,该研究认为该方式进行分类效果应好于使用原始的一维信号作为输入。footnote:[W. Zhang, G. Peng 和 C. Li, 《Bearings Fault Diagnosis Based on Convolutional Neural Networks with 2-D Representation of Vibration Signals as Input》, MATEC Web Conf., 卷 95, 页 13001, 2017, doi: 10.1051/matecconf/20179513001.] + +// 插图片 + +考虑到本设计中相邻时间的三轴加速度数据之间的特征可能有助于对于设备工况进行分类任务,故选二维卷积神经网络。本设计中仅有三轴加速度数据,输入网络的张量大小为:stem:[float32[?,W,3,1]]。其中 W 为采样窗口宽度,图像高度为 3,输入通道数为 1。 + + + + +//训练数据准备 +===== 训练数据的采集和标注 +本设计中送入 CNN 进行识别的数据主要是由 LIS3DH 加速度传感器获取的 x、y、z 三轴的加速度数据。准备训练数据的主要过程如下。 + +* 从下位机接收上传的含有三轴加速度数据的数据包。将数据包解包,并转换成 ASCII 编码以供训练和阅读。将三轴加速度数据逐条储存在文本文件中,以逗号分隔,每个时间点一行。该过程中需要令被测设备保持一种工况,数据以数据流的形式上传并保存。上传的数据需要保证采样时间间隔相等,且在时间上连续。三轴加速度数据在时间上对齐。 + +* 采集到足够多的数据之后,需要对数据进行标注。由于采集过程中令被测设备保持同一类型的工况,因此每次采集的数据为同一类。 + +===== 训练数据的准备 + +//加窗滑动采样,选择窗口大小和重叠 + +//归一化 + +//划分 + +//骨干网络设计 + +//超参数设计,学习率、损失函数 + +//导出 h5fd ==== 基于 Cube-AI 的推理模型转化和部署 -==== 基于 Modbus 总序协议的程序设计 +==== 基于 Modbus 总线协议的程序设计 ==== 设备间数据交换程序设计