步骤1:系统架构
步骤2:您需要什么?/h2》
设备:
的 逃走:
1个Raspberry Pi
1个7英寸官方触摸屏
1个XBee模块Serie 1
传感器:
1个Arduino Uno
1个XBee模块系列1
1x DS18S20温度传感器(1线)
1x 4.7kΩ电阻
1x 10kΩ电阻
1x 18kΩ电阻
1个带接头的Arduino Uno原型屏蔽
软件:
Qt框架
QtXBee(Qt样式API中的XBee库)
QChartJS(chart.js Qt绑定)
xbee-arduino (用于Arduino的XBee库)
Arduino IDE
XCTU(XBee模块的配置软件)
步骤3:硬件:温度传感器
如前所示,温度传感器基于Arduino和1-Wire温度传感器。
1-Wire是由Dallas Semiconductor Corp.设计的设备通信总线系统,可通过单个信号提供低速数据,信号和功率。 1-Wire在概念上与I²C相似,但具有较低的数据速率和更长的范围。它通常用于与小型廉价设备(例如数字温度计和气象仪器)进行通信。由1-Wire器件和相关主器件组成的网络称为MicroLAN [Wikipedia的定义]
我选择的温度传感器是Maxim公司的DS18S20。它具有以下主要功能:
可测量-55°C至+ 125°C(-67°F至+ 257°F)的温度
±0.5° -10°C至+ 85°C的C精度
9位分辨率
不需要外部组件
当XBee模块工作时在3.3V和5V的Arduino UNO中,我们将不得不调整XBee模块和Arduino之间的串行接口的电压电平
步骤4:硬件:网关
对于网关,没有电子产品。唯一要做的就是组装触摸屏并将其插入Raspberry Pi。为此,请查看这篇好文章:Raspberry Pi 7“触摸屏组装指南
第5步:软件:对传感器(Arduino)进行编程
使用Arduino IDE对您的Arduino进行编程。
使用可在我的GitHub上找到的代码创建一个新的Sketch
步骤6:软件:安装网关
此步骤描述了安装和设置网关(Raspberry Pi)的最简单方法,但这并不是最简单的方法。对于高级用户,请转到下一步。
安装Raspbian(使用PIXEL):
首先,我们需要在RPi上安装操作系统。请很好地遵循此指南说明:https://www.raspberrypi.org/documentation/installa 。..
安装构建独立性:
要构建温度监控器应用程序,我们首先要安装构建依赖项。
sudo apt-get update && sudo apt-get install git-core qt5-qmake qt5 -默认libqt5opengl5-dev libqt5serialport5-dev l ibqt5qml5 libqt5quick5 qtquick1-5-dev qtdeclarative5-dev qml-module-qtquick-window2 qml-module-qtquick2
获取源代码:
cd〜/
git clone https://github.com/ThomArmax/QtXBee.git
构建来源:
cd〜/QtXBee
qmake -recursive
make
sudo make install
启动应用程序:
LD_LIBRARY_PATH =/usr/lib/QtXBee/op/example_temp_monitor/bin/example_temp_monitor
第7步:软件:[高级用户]使用Yocto Project安装网关(Rapsberry Pi)
我对Yocto相当熟悉。由于我将Raspberry Pi大量用于个人项目,因此我在GitHub上发布了一些yocto层,尤其是我创建的用于构建所有库和程序的meta-armax层。
在meta中-armax层,我已经创建了一个演示映像,借助SysV init脚本可以启动并直接启动温度监控器应用程序。
您可以在GitHub上找到温度监控器应用程序的代码。
环境设置 :
运行以下命令以安装环境:
sudo apt-get install gawk wget git-core diffstat解压缩texinfo gcc-multilib构建必需的chrpath socat libsdl1.2-dev xterm
获取Yocto:
cd〜/
mkdir yocto && cd yocto
git clone http://git.yoctoproject.org/git/poky -b jethro
cd poky
git clone https://github.com/ThomArmax/meta-armax.git
git clone https://github.com/ThomArmax/meta-hyperion.git
git clone git ://git.openembedded.org/met a-openembedded -b jethro
git克隆https://github.com/agherzan/meta-raspberrypi.git -b jethro
git克隆https://github.com/meta-qt5/meta-qt5。 git -b jethro
source oe-init-build-env
然后编辑conf/bblayer.conf:
#每次build/conf/bblayers.conf
#不兼容地更改都会增加LAYER_CONF_VERSION
LCONF_VERSION =“ 6”
BBPATH =“ $ {TOPDIR} “
BBFILES?=”“
BBLAYERS?=”
/home/thomas/yocto/poky/meta
/home/thomas/yocto/poky/meta-yocto
/home/thomas/yocto/poky/meta-openembedded/meta-oe
/home/thomas/yocto/poky/meta-qt5
/home/thomas/yocto/poky/meta-armax
/home/thomas/yocto/poky/meta-raspberrypi
/home/thomas/yocto/poky/meta-hyperion
/p/home/thomas/yocto/poky/meta-hyperion
“
BBLAYERS_NON_REMOVABLE?=“
/home/thomas/yocto/poky-jethro-14.0/meta
/home/thomas/yocto/poky-jethro -14.0/meta-yocto
“
为RPi2编辑conf/local.conf:
设置 MACHINE =“ raspberrypi2”
构建映像:
运行:bitbake qtxbee-demo-image
将生成的映像刷新到SD卡上:
插入SD卡
使用dmesg命令标识其节点
然后输入:sudo dd if = tmp/deploy/images/raspberrypi2/qtxbee-demo-image-raspberrypi2.rpi-sdimg of//dev/sdd
步骤8:XBee模块配置
为了能够进行通信,我们必须创建一个XBee“网络”。因此必须配置我们的模块。
可以使用XCTU软件进行配置
网关上使用的XBee模块将成为协调器。其配置必须为:
MY = 0
ID = 3332
AP = 1
CE = 1(协调器
用于传感器的XBee模块是终端设备。必须按以下方式进行配置:
MY = 2
ID = 3332
AP = 1
CE = 0 (已禁用协调器)
步骤9:启动
现在,所有步骤都已完成,您只需打开网关和传感器的电源,并且完成了:)
-
温度监控器
+关注
关注
1文章
17浏览量
12238
发布评论请先 登录
相关推荐
评论