技术路线:

图4 技术路线图
1. 硬件配置与环境搭建
硬件配置:配置机械装置的硬件包括驱动系统(如切割电机和牵引电机)、传动系统、夹紧装置、流道装置以及转动结构部件。对于驱动系统和传动系统设计,根据五种安倍瓶的规格确定切割位置、切割深度、切割速度等参数。切割电机和夹紧装置的动作需要精确协调,以确保在正确的位置和时间执行切割操作。同时,还需要整合传感器以监测机械状态,并与树莓派进行连接,实现对机械装置的精确控制和监测。通过这些步骤建立起稳定可靠的机械装置,为系统的正常运行提供必要的物理执行支持。另外需要确保树莓派与摄像头(USB摄像头,因CSI接口可能存在支持问题)的兼容性和正确连接,以保证能够顺利读取摄像头实时数据,为下一步检测工作做基础。

图5 装置组成图
安瓿瓶自动开启器主要包含三大模块:识别模块、控制模块、机械模块。
① 识别模块:负责从摄像头获取图像数据,并利用轻量级的深度学习模型yolov5-Lite进行实时目标检测和识别。首先,使用OpenCV库从摄像头捕获视频流,并对图像进行必要的预处理,如缩放、裁剪和颜色空间转换,以适应模型的输入要求。然后,将处理后的图像送入yolov5-Lite模型进行目标检测,该模型特别适用于资源受限的设备,如树莓派(本项目采用写开发板系列)。检测完成后,对模型的输出进行后处理,提取出目标的位置和类别信息,并将其转换为控制模块可以使用的数据格式。为了提高系统的稳定性和响应速度,还可加入目标跟踪算法,减少因目标小幅移动导致的识别结果波动。
② 控制模块:控制模块的主要任务是根据识别模块提供的信息来制定控制策略,并驱动机械模块执行相应的动作。这包括根据识别结果制定决策逻辑,例如,如果检测到特定目标,则执行特定动作。然后,将这些决策转换为具体的控制信号或指令,如PWM信号或电机转速等。此外,控制模块还需要与机械模块进行通信,发送控制指令并接收状态反馈。需要实时监控系统的运行状态,并根据需要调整控制策略,以确保系统的稳定运行。
③ 机械模块:机械模块是整个系统的物理执行部分,它包含了所有机械部件及其驱动电路。这包括驱动系统(切割电机、牵引电机)用于提供动力,传动系统用于传递动力至执行器,机械模块的流道装置用于将安瓿瓶沿着设定通道滑入可被所述夹紧装置夹持固定的区域,并限制安瓿瓶的曲颈位于可被所述切割机构切
割到的位置。,此外切割电机用于在安瓿瓶曲颈处切割出槽。机械模块还包含直接执行特定任务的部件,夹紧装置用于固定安瓿瓶,并使得安瓿瓶的轴线与所述转轴的轴线重合,转动结构部件用。此外,机械模块还包括各种传感器用于监测机械状态,以及电子控制单元(如树莓派)与机械部件之间的接口电路,用于实现对机械部件的精确控制。
环境搭载:在树莓派上安装操作系统,通常是定制的Linux发行版如Raspbian或Ubuntu 20.04。YOLO环境的部署,首先编译Darknet框架,确保拥有深度学习的环境。安装OpenCV库以便进行图像处理和利用其DNN模块进行深度学习推理,安装用于深度学习训练的框架,比如TensorFlow、torch vision、pytorch等。其次,为了优化推理性能,可以采用模型量化、使用ARM架构优化的库等方法。配置摄像头和输入流,确保其与树莓派的兼容性和正确连接,以捕获实时图像进行目标检测。最后,进行调试和性能优化,以确保YOLO模型在树莓派上稳定运行并实现预期的检测性能。
2. 模型准备与转换
模型的准备:首先从YOLOv5的GitHub仓库中获取源代码,收集并准备用于训练和验证的安倍瓶数据集。接着对数据集图像打目标标注,标注包括安倍瓶的类别和边界框坐标。接着配置训练参数和进行训练,配置训练参数,如模型的大小、学习率、批量大小等,以此获取精准的目标模型。使用准备好的数据集和配置好的参数进行模型训练。最后评估模型性能和优化模型: 在训练完成后,使用验证集或测试集评估模型的性能。根据评估结果对模型进行优化,包括调整网络结构、调整训练参数等。
模型的转化:使用YOLOv5-Lite的训练好的pt模型,并通过export.py脚本将其转换为ONNX格式,便于在OpenCV中使用。使用onnxsim工具对模型进一步简化,以减少计算负担。考虑到树莓派部署的效率,对模型进行量化和优化,以降低资源消耗并提高推理速度。
3. 实时目标检测实现
首先利用OpenCV的DNN模块加载经过转换后的YOLOv5-Lite模型。这个模型可以在树莓派上运行,调整模型的输入尺寸和批处理设置,以适应树莓派的内存和处理能力,以确保实时性。接着,编写代码以从摄像头获取实时视频流,并逐帧对视频流进行检测。在每一帧中,将图像送入YOLOv5-Lite模型进行目标检测,并获取检测到的目标的位置和类别信息。最后,将检测结果在视频流中标注出来,并实时显示在屏幕上。
4. 结果解析与应用分析
模型输出的结果,提取出检测到的目标及其位置信息。通过检测结果确定安瓿瓶位置,控制硬件设备升降、夹紧张开确保其曲颈位于切割机构准备切割的位置以避免损坏或浪费。最后在实际应用中进行测试分析,对项目进一步改进升级。