该项目为智能垃圾箱装置,集成了多个传感器来监控垃圾的状态。
良好的垃圾管理已成为全世界的一个重要问题。在公共和自然空间中,许多人经常不注意而留下垃圾。因为当没有可用的垃圾回收场景时,将垃圾留在现场比将它们带走更简单,所以基于这种原因,甚至一些所谓的保存空间也被垃圾所污染。
为了保护自然区域,提供管理良好的垃圾回收点很重要:
为了防止它们溢出,必须定期升高垃圾箱。重点就在于确定这个定期的时间。如果太快,垃圾桶会清空;但太晚的话,垃圾桶会溢出。在一些垃圾箱难以普及放置的地方(像一些山间小径和农家田园),这个问题就会更加严重。
在这种合理的垃圾管理中,分类可能是一项重大挑战。有机废物可以直接在大自然中处理,用于堆肥;而非有机物废物则必须收集以通过特定工艺进行处理。
项目目的
我们项目的目的是为智能垃圾箱提供监管装置,并集成了多个传感器来监控垃圾的状态。
液位传感器:基于超声波系统,用于通过提醒垃圾收集团队来防止溢出。
温湿度传感器:用于监测垃圾环境。这可用于管理有机堆肥的状况,并在某些特定情况下防止污染(非常潮湿或炎热的条件,非常干燥的条件下的火灾风险)
火焰传感器:有些可能会沉积白炽废物(如烟头)或可能故意点燃垃圾箱。垃圾火灾会对环境产生巨大影响(例如,它可能会引发森林火灾)。火焰传感器可以提醒监督团队该问题。
湿度传感器:对于堆肥过程,保持堆肥材料中的一定湿度水平很重要。我们项目中包含的湿度传感器将测量堆肥的湿度水平。
开启感应器:垃圾桶盖上会安装开启检测器,用于统计垃圾使用情况并检测是否关闭。
定位系统:必须对垃圾进行识别和本地化,以帮助垃圾收集团队对其进行管理。它将在垃圾位置管理上提供更多的灵活性,并可以部署临时垃圾箱(例如,夏季在海滩和远足径上,冬季在滑雪场,在音乐节体育比赛等特殊活动中)
该项目通过带有两个隔间的垃圾箱充分体现了其意义:
一种用于非有机废物。
一种用于堆肥处理的有机废物。
Sigfox用法
垃圾将被安装在孤立的区域。电力将由电池提供,可能连接到太阳能电池板。对我们来说,Sigfox接缝是一个非常好的解决方案:
Sigfox通信系统具有广泛的覆盖范围:它允许大规模部署项目。
Sigfox系统为我们的用例提供了足够的通信能力。
Sigfox可以提供100m定位解决方案:无需在垃圾箱上添加GPS屏蔽。
Sigfox是一种低功耗解决方案,它允许设备自主运行很长时间。
项目详情
硬件设计方法
项目步骤
第1步:了解Sigfox
Sigfox是一种在物联网范围内连接设备的解决方案。它目前在超过45个国家和300万台设备上运营。消息最长可达12个字节,每天最多140个上行链路和4个下行链路。
第2步:硬件查找
使用的硬件:
ArduinoMKR福克斯1200
微型微动开关
HC-SR04-超声波传感器
DHT11-温湿度传感器
KY-026-火焰传感器模块
湿度传感器(定制)-可以使用普通的湿度传感器,但使用几个月后,探头的两条两条腿会腐蚀,腿上的薄铜层会完全被腐蚀掉。因此,我们使用定制的由铜制成的湿度传感器,使其在腐蚀前的使用寿命更长。
树莓派3B型
第3步:硬件连接和布局
第4步:Arduino代码
安装ArduinoIDE:
从此链接安装arduinoIDE:https://www.arduino.cc/en/Main/Software
获取代码:
https://github.com/honhon01/Smart-Waste-Bin
ArduinoSAMD板(32位ARMCortex-M0+)
库:
要安装库,请转到“Sketch》IncludeLibrary》ManageLibraries”。
库类别:
Arduino低功耗
用于MKRFox1200的ArduinoSigfox
DHT传感器库
Adafruit统一传感器驱动程序https://github.com/adafruit/Adafruit_Sensor
RTCZero
查看代码:
#include :用于管理 Sigfox 模块并从设备发送或接收值。
#include :用于使模块进入睡眠状态并节省电池寿命。
#include : 通常,用于 DHT11 工作。
职能:
setup():在这个函数中,我们检查Sigfox是否已经开始。此外,设置DHT11和超声波传感器引脚。
loop():在这个函数中,我们检查按钮是否被按下,这意味着bin是否关闭。如果未按下按钮,Sigfox将不会发送值,但是,如果按下按钮,它将从所有传感器获取值并将其发送到sendPayload()函数。
sendPayload():此函数将启动Sigfox模块并将所有值作为字节发送到SigFox。然后它将结束Sigfox模块
运行代码:
在您了解代码的工作原理之后。尝试编译并上传代码。
不要忘记选择板到ArduinoMKRFox1200和端口到您的设备端口。
第5步:激活您的设备
获得设备后,请转到此链接以激活设备https://buy.sigfox.com/activate。然后,填写信息,您将安装设备。
第6步:发送数据
尝试再次运行ArduinoIDE,这一次设备将能够将数据发送到SigFox。您可以检查您是否在SigFox后端收到数据。
第7步:应用服务器
RaspberryPi3ModelB用作应用程序服务器。其中包含Node-RED、MariaDB和Web应用程序。
第8步:使用Node-RED的后端
安装Node-RED:
按照此链接中的说明进行操作:https://nodered.org/docs/getting-started/installation
Npm需要:
节点-红色-节点-mysql
要从SigFox获取数据,我们需要创建自己的服务器来接收数据。我们使用Node-RED作为从SigFox获取数据的工具。
第9步:数据库-MariaDB
安装MariaDB:
RaspbianRaspberryPi:https://howtoraspberrypi.com/mariadb-raspbian-raspberry-pi/
其他操作系统:https://mariadb.com/downloads
第10步:前端应用程序(网站)