Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rimochan/raspberry-pi-bedroom-monitor
基于树莓派的多功能寝室监控系统
https://github.com/rimochan/raspberry-pi-bedroom-monitor
Last synced: 7 days ago
JSON representation
基于树莓派的多功能寝室监控系统
- Host: GitHub
- URL: https://github.com/rimochan/raspberry-pi-bedroom-monitor
- Owner: RimoChan
- License: other
- Created: 2022-12-03T10:43:41.000Z (almost 2 years ago)
- Default Branch: slave
- Last Pushed: 2023-05-14T11:14:00.000Z (over 1 year ago)
- Last Synced: 2023-05-14T12:21:36.726Z (over 1 year ago)
- Language: Python
- Size: 34.2 KB
- Stars: 32
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# 基于树莓派的多功能寝室监控系统
这个标题看起来就很像大学生的课设,但是其实不是,因为我是小学生,所以是小学生的课设。
大家在寝室里经常会遇到一些难题,比如寝室太冷、太热、太吵,然后你要和舍友理论的时候,舍友却说「不是和之前差不多吗」。
好在聪明的莉沫酱发明了多功能寝室监控系统,有了寝室监控系统记录下这些数据,以后你就可以和舍友说「你看,这个星期的温度比上星期高了0.5度」,然后舍友就会说「哦,那就不用开空调了」,然后你就可以安心的睡觉了。
## 材料
- 树莓派4B 1个 (价格 ¥1000)
- 16G以上的SD卡 1个 (价格 ¥50)
- 传感器 (可选)
- 微雪的传感器组 1个 (价格 ¥200)
- TSL25911FN
- BME280
- ICM20948
- LTR390-UV-1
- SPG40
- SCD40 1个 (价格 ¥100)
- 杜邦线若干 (价格 ¥2)
- 麦克风 1个 (可选) (价格 ¥10)然后因为树莓派现在很贵,也可以买win10平板加usb转GPIO的方式来实现,还白赚了一个平板,不过我没有试过,所以也不知道会不会有坑。
## 监控指标
### 空气
空气指标包括温度、湿度、大气压、二氧化碳浓度、VOC浓度。
- 人的活动会产生二氧化碳和VOC,所以这两个指标可以用来判断舍友是否在房间里。
- 由于VOC是由味道产生的,所以可以根据VOC周期性的变化计算舍友多少天没有洗澡了。
- 此外,二氧化碳浓度过高是导致舍友变成傻子的重要原因,所以这个指标也可以用来判断舍友是不是傻子。
### 场
场指标包括光照强度、紫外线强度、声音、磁场、加速度。
- 光照强度可以用来统计寝室每天关灯上床的时间。
- 紫外线强度在室内没有什么作用,不过因为紫外光很难透过普通玻璃,所以可以判断窗户是不是开着的。
- 声音的频谱可以用来推理当时发生了什么事情,比如说开关门的声音是一条很高的竖线,洗衣机的声音是周期性的短线。
- 地球上的加速度通常都是1G,如果你发现你测出来的值不是1G,那就说明你是在异世界上大学。
### 网络
网络指标包括WiFi信号、WiFi频道、蓝牙信号、局域网主机ping时间、互联网http get时间。
- WiFi信号可以用来诊断网络问题,如果发现它出现异常,那就得及时检查路由器是不是被外卖的盒子埋住了。
- 如果你的寝室的WiFi频道和隔壁寝室的WiFi频道重合了,会导致互相干扰,这时候就需要你们去换个WiFi频道。
- 局域网主机ping时间可以帮你和你的舍友找手机,如果手机ping的延迟很大,那就说明手机在厕所里,如果ping不通,那就说明手机在教室里。
- 互联网http get时间可以在你的舍友过来找你说「今天怎么网这么卡」的时候,把责任推卸给运营商。
然后这里有一个样例可以看: [监控面板的样例](https://snapshots.raintank.io/dashboard/snapshot/QO0xSixMZMV5AIatOAveoIFSnpBgOP8F)
## 使用方法
1. 首先要把树莓派和传感器组装好,并且连上网。
2. 把这个仓库clone到树莓派上。
3. 执行 `pip install -r requirements.txt`
这里会有几个库装不上,这是正常的,网上搜一下就能解决,他们有说要apt install哪些但是我已经忘记了……
4. 文件夹里面有5个监控程序,分别是`监控传感器`、`监控声音`、`监控系统`、`监控蓝牙`、`监控网络`,可以直接用python3命令启动,你需要监控哪些就开哪些吧。
(如果你知道怎么在本地起Grafana,那后面就可以跳过了)
5. 接下来要去注册一个Grafana Cloud的帐号。
6. 进到你的Grafana项目主页点击「+ Connect data」添加一个数据源,选择「Hosted Prometheus metrics」。
7. 接下来根据网页上的提示,一步步填写即可。其中有一个它让你复制配置到本地的,那个地方有`- targets: ['localhost:9100']`,得把它换成`- targets: ['localhost:9191', 'localhost:9192', 'localhost:9193', 'localhost:9194', 'localhost:9195']`。
8. 添加好数据源之后,新建一个Dashboard,但不是空白的,而是选择「Import」,然后把`model.json`里的内容粘贴进去,点击「Load」即可。
## 结束
就这样,大家88,我要去和舍友一起睡觉了。