家用垃圾分类回收系统
2022-02-22刘佳辉
刘佳辉,李 泽
(北京科技大学天津学院,天津 301830)
0 引 言
现阶段,我国大部分城市都遭受着“垃圾围城”的困扰,这不仅制约了城乡均衡发展和新型城镇化的空间布局,而且还对居民的身心健康和社会进步产生了严重影响。破解“垃圾围城”,首要条件是从源头上实现垃圾减量。因此,推动城市社区开展垃圾分类势在必行。自20世纪90年代中期起,部分地区的政府和民间团体就已开始自发探索垃圾分类工作。至2000年,原建设部选取北京、上海、南京等八个大中城市作为生活垃圾分类收集试点,尝试大范围推广生活垃圾分类。就具体实践而言,我国城市社区垃圾分类存在进展缓慢、推进困难以及居民参与率低等问题,垃圾分类获得成功的社区案例少之又少。有学者指出,当前垃圾分类设施供给不足与垃圾回收利用体系不健全是社区生活垃圾分类进展缓慢的原因所在。本文的目标在于设计一款家用垃圾分类回收系统,从根源上解决垃圾分类难的问题。
1 垃圾分类回收系统及总体设计方案
1.1 系统总体设计
系统主要分为硬件和软件两部分,硬件主要包括Arduino控制硬件的舵机模块、光电传感器、超声波传感器模块,以及树莓派、摄像头等。软件部分主要包括基于树莓派的交互界面设计和基于Lobe的垃圾检测模型的训练。系统框架如图1所示。
图1 系统框架
1.2 智能垃圾分类回收系统的软硬件组成
智能垃圾分类回收系统的运转主要由2个270°舵机拖动,双舵机结构具有结构简单、驱动控制便捷、承重能力强,以及分类运转速度快等优点,适用于家庭垃圾分类。
2 硬件设计
2.1 主控制器模块
本文选择的Arduino UNO R3开发板使用ATmega328P作为主控制芯片。Arduino软件具有自己的文本编辑器,开发者可以使用其文本编辑器来编写和修改程序,并将程序上传到Arduino开发板。
Arduino硬件电路板由一条用于为整个电路供电的USB数据线、一个微控制器IC组成。
2.2 舵机模块设计
选择使用270°海灵智电舵机作为控制器,原因在于其可控制转动方向角度,支持角度反馈,具有智能防堵转功能,可最大限度减少舵机因为堵转而烧坏的几率。金属齿轮的舵机具有大扭力,可避免齿轮因为负载过大而崩牙。使用高精度齿轮镶嵌可减少摩擦带来的噪音。
舵机的伺服系统由脉冲控制,通过改变脉冲宽度控制舵机旋转的角度,使用控制线来传送脉冲。脉冲的参数包括最大值、最小值和频率。例如:中间位置为1.5 ms脉冲(选择使用270°舵机,那么中间位置为135°)。控制系统发出信号,使舵机移动到需要的角度并保持,这时外力的影响不会使角度发生变化(除非超过该舵机的最大扭力)。
2.3 满载检测功能设计
满载检测选用超声波模块,超声波模块跟随上舵机运动,当垃圾入桶后,超声波模块根据发送的超声波与接收到超声波的时间差,计算出垃圾的高度,以此实现满载检测。
2.4 垃圾桶机械结构设计
垃圾分类回收系统机械部分分为视频识别区、垃圾投放区、垃圾储存区。
垃圾投放区由上、下2个分离的平面组成,平面为2个四分之三圆,视频识别区识别到投放的垃圾种类后,垃圾投放区的上平面挡板将垃圾推至该种垃圾储存区上方,当下平面缺口与上平面缺口重合,垃圾便落入垃圾储存区,如此即可实现垃圾分类。垃圾存储区如图2所示,垃圾识别区如图3所示。
图2 垃圾储存区
图3 垃圾识别区
2.5 垃圾桶的监测控制硬件设计
垃圾桶的监测功能包括满载检测、垃圾种类识别等,当光电开关检测到信号时,Arduino通过串口通信的方式将数据传输至树莓派,调用提前训练好的垃圾检测模型,对摄像头读取到的垃圾图片进行检测。树莓派再通过串口通信将识别结果传输至Arduino UNO板,然后Arduino发送指令控制2个舵机转动使缺口重合,将垃圾投入对应的垃圾桶。
系统硬件设计如图4所示。
图4 系统硬件设计
3 软件设计
3.1 垃圾分类模型的训练
Lobe是一款方便用户使用的可视化工具,我们可以创建需要的深度学习模型并训练,这个过程无需编写任何代码就能将其部署到APP中。
为降低垃圾识别模型的训练时间,提高识别准确性,选用Lobe进行垃圾识别模型的训练,通过使用大量垃圾图片数据训练出准确度超98%的垃圾分类模型。
Lobe是微软开发的一款用于训练机器学习模型的软件,可通过图形化操作界面导入提前准备的数据集,并根据文件树自动给照片贴上标签。选择Lobe的原因在于其具有模型精度高、训练速度快等优点。
(1)模型构建。从计算机中选择数据所在的文件夹,之后Lobe自动创建深度学习模型并训练。工作过程中,Lobe会调整设置并连接预训练部分对模型进行微调。
(2)模型训练。随着模型的改进,可利用交互式操作界面实时监控模型的训练进度。由于训练在云端进行,故能够快速生成结果,同时不影响电脑的运行速度。
(3)模型部署。模型训练完成后,可以将训练好的模型导出到TensorFlow,然后将其部署在树莓派中,或者生成API,直接将模型部署到云端,然后远程调用模型。
3.2 人机交互界面的设计
为提高人机交互界面的体验,使用Tkinter实现图形化操作界面,可通过触摸屏实现垃圾分类知识普及。视频与摄像头识别界面可随时切换,并显示出垃圾总数及各类垃圾的数量等信息。视频宣传界面如图5所示,垃圾检测界面及垃圾检测结果如图6所示。
图5 视频宣传界面
图6 垃圾检测界面及垃圾检测结果
4 结 语
本文设计的垃圾分类回收系统利用视觉识别技术与单片机技术实现了垃圾智能识别和分类,并具有满载检测功能,能够在显示屏上实时显示垃圾分类情况。此垃圾分类回收系统用尽可能低的成本实现了较多实用功能,但目前的承重能力和硬件可维护方面还存在一定问题。下一步,团队将侧重于系统机械承重和结构部分的改进,同时对视觉识别数据库进行优化和扩充,使之能够具有较好的现实情景实用性。