总结
一款小巧实用的水温计,配备OLED 0.66英寸64x48显示屏,以及DHT11/DHT22湿度和温度传感器。
原来的wemos.ino.txt文件存在一个漏洞,所以请重新下载一份 :) 或者在 setup 函数中通过添加以下代码行来初始化传感器:dht.begin();
整套设备基于 Wemos 1D mini 控制器,搭配 0.66 英寸 OLED 扩展板以及 DHT11/DHT22 传感器扩展板,价格不到 9 美元,详情请见下方链接 :)
它既可以作为独立版本单独用于数据显示,也能作为无线传感器,通过 WiFi 将数据上传至服务器进行记录。
按行分隔的屏幕显示图例:
- 湿度
- 摄氏度温度(可转换为华氏度)
- 当前时间 - 已连接状态下
- 连接状态下,WiFi信号强度以dBi为单位显示,同时还会显示分配的IP地址的最后两段数字。
- 湿度条 - 0 - 100%
- 温度条 - 0 - 40 度(由于空间不足,读数低于零度时显示效果不太理想:))
下面的示例展示了Wemos 1D Mini和PHP接收脚本的代码,以及用于收集和显示数据的RPImonitor软件的相关代码。
安装说明:
硬件:
打印出来,撒上沙子,用热胶将屏幕粘贴到外壳上,并将两者牢固连接起来 :)
软件:
要求:
独立版无此功能
网址 + PHP 服务器 —— 就我而言,是在树莓派 3+上运行的 Lighttpd 和 PHP 组合。
用于分析数据的软件——就我而言,RPIMonitor就能胜任这项任务。
Wemos.ino.txt - 一个完整的 Arduino 代码,可上传至您的 Wemos 1D。请注意,若想让代码正常运行,可能需要对服务器 IP 等参数进行适当调整。
receive.php.txt - 一个在服务器上接收数据的文件。它会创建两个文件,用于存储从传感器接收到的最后一个值。别忘了设置正确的权限:
sudo chown www-data:www-data receive.php
sudo chmod 755 receive.php
sudo usermod -a -G www-data pi // 将用户 pi 添加到 www-data 组中
用于树莓派 3+设备的 RPIMonitor 配置步骤:
/etc/rpimonitor/templates/temperature.conf
读取温度的最新数值
dynamic.17.name=remote_temp
动态数据。17.数据源=/var/www/html/temperature.dat
动态。17.正则表达式=(\d+.\d+)
动态部分。17.postprocess = sprintf("%.3f", $1)
dynamic.17.rrd=GAUGE
以及湿度
动态。18.name=远程用户
动态。18.源=/var/www/html/humidity.dat
动态。18.正则表达式=(\d+.\d+)
动态处理。18.后处理=sprintf("%.3f", $1)
dynamic.18.rrd=GAUGE
并将它们显示为文本形式
web.status.1.content.4.line.2=数据.远程温度+" | "+数据.远程湿度
并将它们显示在图表上
web.statistics.1.content.8.graph.3=远程温度
web.statistics.1.content.9.graph.4=远程用户数量
以所给定的名字为基础
web.statistics.1.content.8.ds_graph_options.remote1.label=远程温度
web.statistics.1.content.9.ds_graph_options.remote1.label=远程用户数百分比
请务必相应地更新行号和内容编号。
如果你喜欢这款产品,可以在这里订购所需的零部件:
Wemos 1D Mini ->http://s.click.aliexpress.com/e/bIteLhb2
OLED 屏蔽器 ->http://s.click.aliexpress.com/e/dTXoboy
传感器防护罩 ->http://s.click.aliexpress.com/e/bWIrdX5Q
打印设置
打印机:
3dTalk迷你版
支持者:
是的
注意事项:
透明的线材很酷,因为你能看到里面的二极管在闪烁呢:)
タグ
モデルソース
