蓝牙网关应用之通过grafana生成小米温度计曲线图
金桔蓝牙网关可以对接任意的蓝牙设备,如果某些蓝牙设备可以通过广播或者蓝牙连接来获取到测量数据并需要保存或展示成图表,那么通过金桔的acserver可以将此功能实现,本说明是通过小米温湿度计来实现的。
准备环境
需要下载influxdb的1.X版本(1.X版本为开源版本)和grafana,这里是windows测试环境,如需linux环境,搜索即可。 下载地址: influxdb:https://dl.influxdata.com/influxdb/releases/influxdb-1.8.10_windows_amd64.zip grafana: https://dl.grafana.com/enterprise/release/grafana-enterprise-8.5.0.windows-amd64.zip
启动influxdb
解压下载的文件,用windows控制台进入到相应的目录下,直接运行 influxd.exe 注意,启动后不要关闭这个控制台界面。
启动grafana
解压下载的文件,用windows控制台进入到相应的目录下,直接运行 grafana-server.exe
注意,启动后不要关闭这个控制台界面。
配置acserver
打开acserver目录下的config/setting.js 配置influxdb信息:
配置网关
配置后启动acserver,通过在线的网关,配置过滤小米温湿度计:
配置数据解析类型
因为小米温湿度计是通过蓝牙连接来获取数据的所以这里的数据来源是“蓝牙连接数据”,另外注意上面的influx存储需要打开。
连接小米温湿度计
点击过滤出来的设备mac地址,并选择基站和连接类型,点击连接 当出现连接成功事件后,表示已经跟小米温湿度计建立了蓝牙连接,我们打开数据接收: 点击这里后,等待出现成功消息即可: 这时,温湿度数据已经通过网关和acserver传输到influxdb里了。
配置grafana
打开grafana界面:http://localhost:3000/ 输入用户名密码,admin 第一次登录要求改密码。 配置数据源: 选择influxdb数据库,然后配置inluxdb的参数: 注意这里配置的database是配置acserver的时候填的,这两个地方需要对应上。 然后我们新建一个dashboard 在新建的dashboard里,from填xiaomi,这个是在acserver解析数据时配置的,select里面选temperature,这个字段时解析脚本里写的,如果改了解析脚本这里需要相应的改变字段。 然后我们就可以得到小米温度的数据曲线了,我们也可以增加一个湿度的曲线,最后可以得到界面: 保存dashboard后得到panel
|