美文网首页嵌牛IT观察
用树莓派制造马桶状况监视器

用树莓派制造马桶状况监视器

作者: 努力搞cv | 来源:发表于2018-12-23 22:33 被阅读2次

姓名:蒋欣哲                                     学号:16020188019

转载自微信公众号 趣无尽

你是否在公共卫生间碰到过用完之后没有冲过的马桶?是的,总有些人忘了冲马桶,或者他们根本就不在乎,或者有时候是马桶冲水还坏掉了……遇到躺着大条的马桶,是极其难忘的人生经历。

这个项目是制作一个马桶状况跟踪器,它可以准确的告诉你马桶是否干净,是否可以如厕。

试想一下,我们能否监控马桶呢?使用相机是一个简单的解决方案!但你不能把相机放在厕所里面。那么,使用Walabot是一个很好地选择。 

Walabot是一款可编程的3D成像传感器,可以使用射频技术观察物体,并且无需任何光学图像即可实现高度复杂的感应功能!

材料清单

硬件:Walabot×1

树莓派3B×1

软件:MQTT

Ubidots

MIT App Inventor

HTTP

Walabot 的工作原理

Walabot 是什么黑科技?看这个视频感受下。

Walabot通过多个天线来发送,接收和记录信号,从来感知环境。分析多个发射接收天线的宽带记录以重建环境的三维图像。

Walabot让3D成像成为可性,它替代了无法使用相机的区域,例如浴室、试验室或卧室。

我使用Walabot去识别马桶是否清洁干净。它的工作原理非常简单。将Walabot安放在马桶顶部(通常在厕所的顶部)。

在初始化阶段,Walabot将扫描干净的马桶。初始化后,它定期扫描马桶(1分钟或更短)并检测初始化期间不存在的任何物体。由于在初始化期间马桶是干净的,Walabot可以很容易地检测到马桶上的任何新的物体(例如粪便)。

为了获得更好的结果,必须正确设置Walabot参数。Walabot还可以测量它检测到的物体距离。因此,根据测量物体的距离,也可以知道这间厕所是否可以进入。

厕所是否有人使用

马桶是否干净

以上两个数字显示了如厕使用度和清洁度。

整个系统的运作

完整的厕所跟踪系统需要一些重要的部分。

1、将Walabot连接到树莓派3。

2、Walabot定期扫描任何新的对象,树莓派从Walabot上收集该信息,使用MQTT协议将信息发送到Ubidots云服务器。

3、启用MQTT通信,将pyhton paho MQTT客户端安装在树莓派中。

4、使用MIT App Inventor开发了一个Android应用程序,可以监控厕所的状态。

5、Android应用程序使用HTTP协议从Ubidots云接收信息。

请参阅下面完整的系统框架图。

系统框架图

安装步骤:

1、将Walabot SDK安装到树莓派。

按照Sparkfun.com的入门指南进行操作。

2、将paho mqtt客户端安装到树莓派。

使用树莓派终端命令:

sudo pip install paho-mqtt

3、在Ubidots.com中创建一个帐户并记下设备令牌。

ID

4、将ubidots API安装到树莓派。

在pi终端中输入以下命令:

sudo pip install ubidots

记下你的ubidots API密钥:

5、为树莓派开发 Python 程序。

为了找到合适的配置参数(R,pi,theta),我使用Windows的Walabot SDK开发包测试不同方位的不同对象的Walabot。我选择的值在python代码中提到。

我将阈值调小用于检测小的物体。

minInCm, maxInCm, resInCm = 30, 300, 3

minIndegrees, maxIndegrees, resIndegrees = -15, 15, 5

minPhiInDegrees, maxPhiInDegrees, resPhiInDegrees = -30, 30, 5

threshold = 2

用Windows SDK测试

使用开发python程序和Android应用程序之后,我手动测试系统以便了解整个系统是否正常工作。(python程序和android源代码附加在代码部分)。

在最后的代码中,我更新了R值。对于测试设置,它在测试边缘设置的很小。

这是程序中实现的逻辑关系,用于识别厕所中是否有人,厕所是否干净。

6、在MIT App Inventor中开发Android应用程序

源代码文件附在代码部分中。

Android的App Inventor是一个开源Web应用程序,最初由Google提供,现在由麻省理工学院(MIT)维护。

它允许新手进行计算机编程,可以为Android操作系统(OS)创建软件应用程序。它使用图形界面,非常类似于Scratch和StarLogo TNGuser interface。

允许用户drag-and-drop可视对象以便创建在Android设备上运行的应用程序。

如果你是App Inventor的新手,请按照这些初学者教程进行操作。

如果你想使用附加的资源,你可以修改htttp网址。

更换 URL:

http://things.ubidots.com/api/v1.6/datasources/YOUR_OWN_DEVICE_ID/variables/?token=YOUR_OWN_TOKEN

只需将你的设备ID替换掉YOUR_OWN_DEVICE_ID,将你的ubidot令牌替换掉YOUR_OWN_TOKEN即可。然后将build.apk文件并将其安装到你的手机。

新建apk文件

令牌和设备ID取自用户并存储在设备存储器中以供下次使用。

使用数据库

Android app可在Google Play商店中找到。你可以将其从Play商店安装到你的智能手机。

链接为:

https://play.google.com/store/apps/details?id=appinventor.ai_khairul_uapstu.toilet

部分演示图

\

应用程序的屏幕截图

框架图

框架图显示整个系统的工作情况。

数据库配置

使用App Inventor进行应用程序开发

Android应用程序(.apk文件)

请在文件库下载apk文件

http://maker.quwj.com/project/77

Android源代码文件(MIT App Inventor)

请在文件库下载Android源代码文件

http://maker.quwj.com/project/77

代码

树莓派的Python代码。在项目文件库中可以下载。

http://maker.quwj.com/project/77

本项目文件库地址:

http://maker.quwj.com/project/77

相关文章

  • 用树莓派制造马桶状况监视器

    姓名:蒋欣哲 学号:16020188019 转载自微信公众号趣无尽 你是否在公共...

  • 新手教程:如何 SSH 进入树莓派

    在这篇树莓派文章中,你将学到如何在树莓派中启用 SSH 以及之后如何通过 SSH 进入树莓派。 在你可以用树莓派做...

  • Python学习与技术博客写作的利器

    Jupyter Notebook应用介绍 今天用树莓派做了用Python来获取树莓派天气工作站温度数据并且生成图表...

  • 树莓派和HMC5883(QMC5883)的使用方法

    本文是树莓派爱好者投稿文章,授权树莓派爱好者基地发放,请勿转载!否则承担相应法律责任! 本文作者 微信公众号:制造...

  • 尝试--树莓派i2c接口SHT30的使用

    给树莓派安装SHT30 由于买来的SHT30已经接好电路,直接用杜邦线连接树莓派即可。 完美 树莓派开启i2c 参...

  • 树莓派针脚图

    树莓派40Pin引脚对照表 本表格适用于树莓派B+、树莓派2B、树莓派A+,并且兼容树莓派B,树莓派B为26Pin...

  • 树莓派上手资料

    树莓派开箱上手教程树莓派下载资料使用手机连接树莓派1使用手机连接树莓派2树莓派实验室无显示屏启动树莓派 如何用pu...

  • opencv 源码编译

    之前用树莓派做人脸识别,台式机用的64位ubuntu训练模型,树莓派用的32位raspi系统使用。以下提供给大家参...

  • 树莓派技术网站导航

    树莓派官网 安装 树莓派Mac OS X下安装系统开启ssh登陆 使用教程 树莓派实验室树莓派吧树莓派中文站 项目...

  • 可移动的图像识别小车(树莓派+摄像头)

    熟悉树莓派 树莓派介绍 树莓派安装系统 picamera的API 树莓派连接显示器不亮屏的解决方案 树莓派摄像头的...

网友评论

    本文标题:用树莓派制造马桶状况监视器

    本文链接:https://www.haomeiwen.com/subject/zkpokqtx.html