基于YOLOv5和深度学习的智能垃圾分类箱

1 作品概述
传统的垃圾分类以处理以人工的方式进行,该方式分类过程繁琐,给生活带来诸多不便,
分类名称没有做到见名知意,很难分清垃圾的属性。而当前市面上智能垃圾箱的设计又较多
局限于功能性的研究,较少考虑作品的交互性和用户友好层面的设计,并且分拣效率低,自
动化程度不高。
本作品是以 STM32F407 单片机为核心的控制系统。系统主要包括:垃圾识别模块和主控
制模块。其中垃圾识别模块包括 Jetson Nano 开发板和摄像头两部分。主控制模块包括舵机
模块、照明模块、屏幕显示模块、语音提示模块和满箱报警模块。在此基础上,垃圾箱还配
备有后台管理系统,通过 NB-IoT 模块,实现远程查看管理垃圾箱的信息。
本作品从源头进行垃圾分类,且应用场景十分广泛,不管是办公室、路边还是风景区,
让“随手一丢”变成文明,大大节省了往常垃圾先集中后分类的成本。同时替国家节省了垃
圾分类的开支、推动了垃圾处理产业链的完善。本作品的智能化垃圾分类,精确度高,智能
性好,更可以提高垃圾的回收率,促进资源的利用率,实现经济的可循环发展。
本作品创新点:
(1)将人工智能算法和机器视觉技术引入垃圾分类的自动检测中,以达到正确分拣分
类的目的,使垃圾分类更简单、操作更方便;
(2)垃圾箱配备的 LCD 显示模块和语音播报模块可以给用户普及垃圾分类的知识,提
高用户垃圾分类的意识;
(3)垃圾箱投放平台运用两个舵机的联动控制,克服安装难度大、运行误差累积的弱
点,并且相较于机械臂和推杆,效率高,成本低
2 需求分析
垃圾分类是保护环境,改善人居环境、促进城市精细化管理、保障可持续发展的重要举
措。能不能做到垃圾的合理分配可以直接反一座城市的生态素养和文明程度。
为推进垃圾分类工作,各个城市都设有垃圾分类箱,除在垃圾筒上贴分类标签这种普通
垃圾分类箱,目前普遍使用的智能垃圾分类箱有:
(1)标签类垃圾分类箱:通过用户扫描二维码选择垃圾的标签进行分类;
(2)语音垃圾分类箱:说出垃圾类型,打开对应垃圾桶;
(3)红外感应垃圾分类箱:当有人靠近时,垃圾箱自动打开;
(4)接触式垃圾分类箱:用户轻拍或者轻踢垃圾箱,垃圾箱自动打开;
其中较为出名的有“小黄狗”,通过铺设智能垃圾分类回收机,“小黄狗”采用对生活垃
圾前端分类回收、中端统一运输、末端集中处理的“物联网+智能回收”新模式,完成有偿
回收废品。但是,“小黄狗”更多的是引导用户来选择垃圾种类,不能够实现完全的智能化
操作。并且,“小黄狗”多安装于小区内,所面向的用户较为局限。
又如“EKO”垃圾桶,其为红外感应垃圾桶,通过红外线实现感应开合,当有手或物体
进入感应范围,就会开盖或关盖。但是,“EKO”更加注重的是非接触式的垃圾回收,而对垃
圾智能分类这一方面有所缺失。同时,“EKO”主要用于家庭、办公室等场所,而且价格较高,
不符合大多数用户的使用需求。
本作品针对这些问题,提出用图像识别来进行垃圾分类的解决方案,利用 Jetson Nano
作为垃圾分类的识别平台,使用 YOLOv5 算法来进行垃圾识别,识别完成后发送信号给 STM32,
STM32 再控制双舵机的旋转来实现全自动化的垃圾分类,既做到了完全的智能化,又能够实
现垃圾的正确分类。本作品主要面向的用户为办公室人员、风景区游客、路人等,垃圾箱配
备的 LCD 显示和语音播报可以有效地给这些用户普及垃圾分类的知识,推动城市生态化发
展和生态城市建设工作的开展。
3 技术方案
本作品属于物联网应用类作品,满足物联网的四层架构,包括感知层、传输层、平台层
和应用层。 作品 知层为所有数据的基础,利用摄像头、超声波传感器来获取的被投入
垃圾的信息;本 作品 传输层 主要负责传递和处理感知层获取的信息,通过串口通信等方式
将感知层感知到的垃圾数据进行相关的操作,并通过 NB-IoT 模块将垃圾箱的信息传输至后
台并进行处理;本 作品 平台层分为业务分析平台层和连接管理平台层,业务分析平台层拥
有垃圾箱自主处理所投入的垃圾的业务分析能力,连接管理平台层能通过自主研发的手机
APP 来监控和管理垃圾箱,在整个系统中起到了承上启下的关键作用; 作品应用于数字生
活,注重用户的使用体验,在选材、组配、布线规范和安全隐患等方面都有充分的考虑。并
且本作品由本团队自主研发,在代码的实现、作品的使用上更加符合用户的日常需求。
3.1 垃圾箱组成
本作品实物由 PVC 板裁剪制作,安全稳定,坚实可靠。其分为三层,第一层为人机交互
层,配备有一个 10.1 英寸的 LCD 屏,LCD 屏会不断滚动播放我们的垃圾箱信息以及赞助广
告。LCD 屏装有一个小型的腔体喇叭,用来实现语音播报以及满箱报警功能。在 LCD 屏幕的
前面是垃圾箱的投放口,需丢弃的垃圾从此口投入。投放口的上沿有一个超声波传感器,用
来检测是否有垃圾投入。当有垃圾投入时,垃圾箱内部的灯条会打开,这有利于在黑暗的环
境下识别垃圾,提高垃圾识别的稳定性。
第二层为系统运作层,是进行垃圾识别以及实现垃圾分类的地方,第二层中装有一个
Jetson Nano 开发板、一个 USB 摄像头、一个 STM32F407 单片机、两个数字舵机、一个 5v 直 流电源、一个继电器和一个电插排。Jetson Nano 能够通过摄像头精准地识别垃圾,在识别
完垃圾后,Jetson Nano 会发送一个信号给 STM32F407 单片机,单片机会控制 LCD 屏幕进行
语音播报并控制两个舵机旋转,底盘舵机会控制平台旋转到哪一类垃圾桶,转盘舵机会控制
垃圾的投入。5v 直流电源是两个舵机的供电来源,继电器会控制垃圾箱内部灯条的打开,
电插排用来给 Jetson Nano 和 5v 直流电源供电。
第三层为垃圾处理层,是真正装垃圾的地方,垃圾桶的形状类似于一个平行四边形,这
符合垃圾箱八边形的设计。每个垃圾桶都配备有一扇门,用合页轴来控制门的开与关。每个
垃圾桶的上方都会有一个超声波传感器,用来监测垃圾桶是否已满。当垃圾桶达到满的条件,
超声波会发送信号给单片机,单片机会控制 LCD 的报警以及语音的播报。
3.2 代码编写烧录
本作品 STM32F407 代码由 Keil uVision5 通过 ST-Link 编写烧录;LCD 屏代码由 USART
HMI 通过串口编写烧录;YOLOv5 由 PyCharm Community Edition 2022.2.2 编写;Jetson
Nano 基于 Linux 系统运行。
3.3 STM32F407 相关接线
①PA2 连接 Jetson Nano 的引脚 8;PA3 连接 Jetson Nano 的引脚 10;GND 连接 Jetson
Nano 的引脚 9。
②PA0 连接转盘舵机的信号口;PA1 连接投放舵机的信号口。PA0 与 PA1 为 STM32 中
TIM5 的 PWM 波端口。 ③PA9 连接 LCD 屏的 RX 口;PA10 连接 LCD 屏的 TX 口;5v 连接 LCD 屏的 VCC;GND 连
接 LCD 屏的 GND。
④PB10 连接 NB-IoT 模块的 RX 口;PB11 连接 NB-IoT 模块的 TX 口;5v 连接 NB-IoT 模
块的 VCC;GND 连接 NB-IoT 模块的 GND。
⑤PD3、PD5、PC0、PC2、PA4 分别连接五个超声波传感器的 Trig;PD4、PD6、PC1、
PC3、PA5 分别连接五个超声波传感器的 ECHO;5v 连接五个超声波传感器的 VCC;GND 连接
五个超声波传感器的 GND。
⑥PE14 连接继电器的信号口。
4 方案实现
本设计是以 STM32F407 单片机为核心的控制系统。系统主要包括:主控制模块和垃圾识
别模块。其中主控制模块包括舵机模块、照明模块、屏幕显示模块、语音提示模块和满箱报
警模块。垃圾识别模块包括 Jetson Nano 开发板和摄像头两部分。在此基础上,垃圾箱还配
备有后台管理系统,通过 NB-IoT 模块,实现远程查看管理垃圾箱的信息。
图像识别是整个系统的基础功能,运行 Jetson Nano 深度学习 YOLOv5 算法外接摄像头
进行采集并识别,若未能成功识别,则继续识别;成功识别,则将模拟信号转化为电信号。
最后通过 Jetson Nano 通过串口通信输出控制信号控制 STM32F407,若控制信号未能被 STM32F407 成功接收,则 Jetson Nano 继续发送,反之则 STM32F407 做出正确的反应。由
Jetson Nano 的图像识别程序完成识别,实现智能垃圾分类操作系统的图像识别和智能垃圾
分类操作系统分类投放的基本功能。
图 4.1 系统流程图
4.1 垃圾识别模块
垃圾识别模块包括 Jetson Nano 开发板和摄像头两部分。选择 SY003HD 摄像头进行图
像采集,接口与 Jetson Nano 开发板相连采集垃圾图片,通过 YOLOv5 算法实现分类的目的。
Jetson Nano 是一款开源硬件,考虑到 Jetson Nano 具有图像处理能力强、功耗低、性价比
高的优点,将 Jetson Nano 作为只能垃圾分类箱的核心硬件平台。摄像头对垃圾进行拍摄图
片,将图片上传至 Jetson Nano 平台进行数据处理,从而对投放的垃圾进行分类的识别。
YOLOv5 算法具有速度快、体积小以及准确率超高等特点,且 YOLOv5 算法比 YOLOv3、YOLOv4
在检测速度和检测精度有了更进一步的提高,因此选用 YOLOv5 算法将物体检测作为回归问
题进行求解。 运行 Jetson Nano 深度学习 YOLOv5 算法外接信息进行采集并识别,若未能成功识别,
则继续识别;成功识别,则将模拟信号转化为电信号。
4.2 垃圾箱主控模块
垃圾箱主控模块主要采用 STM32F407 开发板,STM32F407 是 ST 基于 ARMCortex TM -
M4 为内核的高性能微控制器,所使用的 ART 技术使得程序零等待执行,程序执行的效率非常
高。集成了单周期 DSP 指令和 FPU(floatingpointunit,浮点单元),提升了计算能力,可以
进行一些复杂的计算和控制。
垃圾箱的主控模块主要负责对模拟信号传输的管理,通过 Jetson Nano 通过串口通信输
出控制信号控制 STM32F407,若控制信号未能被 STM32F407 成功接收,则 Jetson Nano 继续
发送,反之则 STM32F407 做出正确的反应。
4.2.1 照明模块
投放口的上沿有一个超声波传感器,用来检测是否有垃圾投入。当有垃圾投入时,垃圾
箱内部的灯条会打开,这有利于在黑暗的环境下识别垃圾,提高垃圾识别的稳定性。
4.2.2 舵机模块
舵机控制模块将获得的直流预电压与电位计的电压进行比较,以获得电压差,从而确定
发动机的前后旋转。在本产品的设计中通过控制 PWM 波的输出来控制其旋转角度。当我们放
置垃圾,Jetson Nano 识别之后发送信号给 STM32f407 单片机,单片机根据信号控制一号舵
机转动一定的角度,然后再控制二号舵机旋转使垃圾落下,实现垃圾的自动投放。
4.2.3 语音提示模块
LCD 屏配备有一个小型腔体喇叭,在单片机收到信号后,STM32F407 再发送信号给 LCD
屏,LCD 屏控制喇叭进行语音播报。
4.2.4 满箱报警模块
垃圾箱的每个垃圾投放口上方安装了 HC-SR04 超声波模块,实时监测垃圾箱里有多少垃
圾。一旦距离过近,STM32F407 会控制 LCD 发出警告。
4.2.5 屏幕显示模块
在垃圾箱不工作时,LCD 屏会滚动播放垃圾箱信息以及赞助商广告,当垃圾箱开始工作
时,STM32F407 会发送信号给 LCD 屏,LCD 屏根据所受到的信息显示对应的画面。
4.3 后台管理系统
垃圾箱配备有 NB-IoT 模块,该模块向阿里云 iot 物联网平台发送垃圾箱的信息。平
台接受到信息后保存到产品设备下的物理模型的数据中,再通过阿里云物联网平台提供的
sdk,以 node.js 的形式写入 uni-could 云空间的云函数中,配置好跨域后过云函数返回值 调用阿里云物联网平台物理模型中存储的数据,将其保存到云空间的数据库中,我们可以
根据数据进行相关操作。云数据也可以在前端被调用,在手机 APP 上显示,管理员和清洁
工会根据 APP 所显示的信息来对垃圾箱进行维护和清理。
图 4.2 后台管理图 5 测试报告
5.1 垃圾数据集的制作以及垃圾的识别率
制作了基本的垃圾图片数据集,分别为厨余垃圾、可回收垃圾、有害垃圾和其他垃圾
4 种不同垃圾。为了得到更好的训练模型,每种垃圾图片数据集包含来自不同渠道的 200
张图片,共计 8800 张图片。在模型训练的过程中,80%为测试集,20%为训练集。
图 5.1 识别效果图
为稳定垃圾箱在各种场景下的垃圾识别率,一是在尽量多的场景下制作训练集,这样
即使更换了场景,对垃圾识别的影响也会较小;二是在垃圾箱识别处安装了灯条,在将要
识别的时候,灯条会自动打开,这样即使更换了场景,垃圾箱也会提供一个变化不大的识
别环境。不仅如此,当 Jetson Nano 识别到垃圾发信号给 STM32F407 时,垃圾箱不会立刻
根据信号进行相关控制,其会比较 Jetson Nano 发来的 5 条信号,超过 4 条信号一样,垃
圾箱才认为识别到了该类垃圾,并进行相关控制。在本团队的努力下,垃圾识别的准确率
有了明显的提升,各类垃圾的识别率达到了 90.8%左右。
表 5.1 垃圾分类测试结果
5.2Jetson Nano 与 STM32F407 的通信
Jetson Nano 与 STM32F407 之间采用串口通信,当 Jetson Nano 识别到垃圾时,会发
信号给 STM32。为避免不必要的信号发送和接收,STM32 设置了一个状态位,只有在投放口
超声波识别到有垃圾投入并打开灯条后,STM32 才会打开与 Jetson Nano 的串口通信,并
根据固定帧头、帧尾进行数据的传输。如“FF1111EE”,此数据代表可回收垃圾。
5.3 双舵机的控制方法以及旋转时间间隔控制
为节省垃圾箱的空间,垃圾箱的舵机没有外接高电流的电源设备,这会导致当两个舵
机同时运行时,会导致额定电流过载。为避免这种情况,精准地测量了投放每类垃圾时转
盘舵机所需要地运行时间,在转盘舵机运行结束之时,垃圾箱会开启投放舵机。投放结束
之后,垃圾箱会以相同的时间先将转盘舵机归位,然后再将投放舵机归位,并置一个状态
位表示投放结束。
5.4 垃圾箱剩余容量的测量以及满箱报警
每个垃圾箱的上方安装了一个超声波传感器实时检测垃圾桶最上方垃圾与超声波传感
器之间的距离。在垃圾达到一定量即超声波测量的距离小于我们设置的值(50cm)时,
STM32 会发送信号给 LCD 屏,让其显示满箱的播报画面并控制进行语音模块进行满箱报
警。在满箱时投放垃圾,垃圾箱不会将其投入垃圾桶内。为防止垃圾投入时触发到了超声
波传感器的触发条件,STM32 设置了在进行垃圾投放即舵机运转时,暂时关闭超声波传感
器。
5.5 未知垃圾的识别
当触发了垃圾识别的条件,即投放口超声波传感器检测到有垃圾投入时,Jetson
Nano 在 5 秒内没有识别出垃圾,垃圾箱会先将其投入其他垃圾,然后将垃圾信息上传至后
台,工作人员后面会在训练集中补充此垃圾。
6 应用前景
长久以来,危害我国环境问题之一的是垃圾污染,保护环境刻不容缓。从焚烧垃圾来解
决垃圾堆积问题,到开始有垃圾桶,再到后来意识到垃圾分类的重要性,出现了智能分类垃
圾桶。
一方面,在当今垃圾分类数字化转型已成趋势,生活垃圾分类中的大数据规范化、问题
溯源化、监督可视化、风险警示化的数字技术具有显著优势,数字技术赋能提升垃圾处理水
平、促进城市治理,已成为必然趋势。中国智能垃圾分类行业市场规模正逐渐扩大,由 2018
年的 34.5 亿元上升至 2022 年的 90.9 亿元,年均复合增长率为 27.4%,交易市场规模不断
扩大。数字化转型将进一步释放垃圾分类循环经济市场,成为产业重要引擎,带领产业迎来
发展红利期。
另一方面,根据市场调查来看,踩踏式垃圾桶和带盖垃圾桶仍是目前市场上最频繁使用
的垃圾桶。本作品推陈出新,随着人们生活水平提高,家居生活现代化、智能化、自动化是
对人们未来美好生活的期待。随着社会的发展,人口增加,垃圾桶的需求越来越大,于是智
能垃圾桶应运而生。就如当初的节能灯管、饮水机一样,已全面普及。自动智能分类垃圾桶
在未来的几年中也必将普及。智能垃圾分类桶可以辅助人们进行垃圾分类,并普及相关的分
类知识。通过智能语音的提醒,可以提高人们的垃圾分类的正确率和环保意识,相较于普通
的垃圾回收系统,它带来的经济利益将十分可观。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值