跳转到主要内容

英特尔Edison示例项目之物联网与给水泵

kelly 提交于


本应用项目为爱迪生开发板,英特尔在线开发云平台的连载系列。通过此实验,开发者可以学习到以下内容:

● 熟悉英特尔爱迪生开发板,爱迪生开发板是一款原型开发板,适用于物联网及可穿戴产品。

● 英特尔爱迪生开发板IO接口,英特尔物联网开发套件库函数MRAA与UPM库的使用。

● 熟悉英特尔XDK物联网开发云平台,通过该云平台内建集成传感器驱动,开发者可以通过英特尔爱迪生开发板或者伽利略开发板快速开发程序并部署。

● 从微软Azure云平台建立Azure Redis Cache,上传并存储给水系统数据与日志。该云平台包含数据分析,机器学习,还有丰富的实用工具,为我们简化设计,便于物联网传感器接入云平台,项目敏捷开发与快速实现。

● 熟悉Twilio* API服务,便于发送文本信息

我们将要做什么

我们通过英特尔爱迪生开发板设计一套自动给水系统,主要功能如下:

● 自由控制水泵的开关,或者建立一个计划任务。

● 通过流量传感器采集监测水泵的工作状态。

● 可通过手机内置浏览器来配置给水时间。

● 从云数据可以查看给水工作状态与日志。

● 发送短信信息来告警系统工作状态。

物联网给水系统工作原理

● 主要通过爱迪生开发建立的web服务网页,使用手机内置浏览器来配置给水时间。

● 温度传感器每隔一段时间采集一次数据,上传至云平台并显示到网页。

● 当水泵发生故障时,系统将发送短信,并附上水泵的ID号,以方便维修。

● 当然,我们也可以通过物联网平台将数据上传至我们自己的帐户里。

硬件清单

● Intel® Edison with an Arduino* breakout board

● Grove* Moisture Sensor

● Water Pump

● Water Flow Sensor

● Grove* Dry-Reed Relay

我们开始设计之旅吧!

首先,我们从git网站拷贝一份How-To Intel IoT Code Samples下来。指令如下:

$ git clone https://github.com/intel-iot-devkit/how-to-code-samples.git

也可以通过下面的链接直接下载工程压缩包文件https://github.com/intel-iot-devkit/how-to-code-samples 在页面的右下方点击下载按钮,然后解压即可。

项目导入

打开英特尔XDK物联网平台,选择“导入Node.js项目”。


打开工程文件,并选中。


连接英特尔爱迪生开发板,然后将程序下载到开发板中。


电脑将自动添加爱迪生开发板,直接点击左侧Iot设备菜单。


如果电脑没有能自动识别,那么我们需要手动配置。在地址栏里输入192.168.2.15,端口号58888,然后再点击连接按钮并保存配置。

连接Grove传感器


我们需要准备一块与Arduino兼容的Grove背板,用来将所有Grove设备连接到一起。由于采用5V供电,请确认电压选择开关。

给英特尔爱迪生开发板供电,建议使用12V1.5A的电源适配器。

另外,给水水泵需要另外一个5V供电电源。为了防止干扰的出现,建议使用两个电源适配器或两组电池。

安装Grove干节点控制模块。

将D4引脚与干节点控制引脚相连。

将5v电源的正极与给水水泵相连。

将给水水泵的负极连接Grove模块的干节点。

将Grove模块的干节点的另一端连接公共地。

将水流计传感器的红线连接到5V电源,黑线连接到公共地,将黄线连接到Grove模块的引脚2。

将Grove引脚连接Grove湿度传感器,将另一根线连接到A0引脚。

编译英特尔XDK物联网平台


点击Upload按钮上传编译好的程序到英特尔爱迪生开发板。


然后,再点击“运行”按钮。

配置给水计划


我们可以清晰看到,爱迪生开发板通过一个网页来显示给水计划,控制命令与当前湿度日志记录。

英特尔爱迪生开发板与物联网可是一对兄弟。奔跑吧,兄弟!还在继续,敬请期待……

文章来源:英特尔物联网开发者