前言
基于IOT平台构建智能路灯应用,使用云产品:弹性服务器ECS,虚拟私有云VPC,弹性公网IP,项目管理Project,部署CloudDeploy,代码托管、编译构建、信息通知服务SMN,设备接入IOTDA.
通过构建这个智能路灯应用,最重要的是掌握设备向物联网平台报告数据的原理和方法这里主要使用MQTT协议通信MQTT同学,可以去补。
1.资源下载
在华为云实验环境中双击Xfce,打开Terminal终端。
下载“HubSimubator.jar”
cd Desktop/ wget https://sandbox-experiment-resource-north-4.obs.cn-north-4.myhuaweicloud.com/internet-wisdom-lamp/HubSimulator.jar
下载“SmartSreetLight.zip”
wget https://sandbox-experiment-resource-north-4.obs.cn-north-4.myhuaweicloud.com/internet-wisdom-lamp/SmartStreetLight.zip
这两个文件将在后面使用,其中SmartStreeLight.zip是模型文件。
2.构建智能路灯应用
在做项目的时候,我们都有自己的项目管理工具,这里使用华为云的项目管理ProjectMan。
2.1 构建项目
开放项目管理ProjectMan_云端异地协作办公工具_敏捷迭代开发_Scrum_华为云
经过一系列免费购买,最后进入以下页面
新建项目
点击新项目,获取以下页面
在空白项目中点击Scrum,填写项目
项目在这里创建完成。
2.2 创建代码仓库
在创建相同的项目后,我们需要将代码放入代码管理工具中,即使用代码托管功能创建代码仓库。
选择代码中的代码托管
按模板创建
华北-北京四北京直接选择
选择出现的模板
填写仓库基本信息
代码仓库的创建在这里完成。
2.3 构建并归档软件包
选择构建&发布中的编译构建
新建任务
新的编译建设任务
使用默认参数,然后点击新建并执行
下图显示了构建任务的成功执行。
验证执行结果:点击发布
说明我们的建设任务实施成功。
3.创建主题并订阅SMN
新闻通知服务是什么?SMN?
新闻通知服务(Simple Message Notification)根据华为云用户的需求,最终用户可以主动推送通知信息HTTP、HTTPS、应用等方式接收通知信息。华为云用户也可以在应用之间通过新闻通知服务实现应用的功能集成,降低系统的复杂性。
下面我们来做SMN订阅。
主题管理->主题-创建主题
3.2 订阅SMN
点击添加订阅
使用短信订阅,在终端填写手机号码
然后博主收到短信
4.创建弹性云服务器ECS
什么是ECS?
弹性云服务器(Elastic Cloud Server)是一种可随时自助获取、可弹性伸缩的云服务器,可帮助您打造可靠、安全、灵活、高效的应用环境,确保服务持久稳定运行,提升运维效率。
想要学习更多关于ECS你可以在这里看到成长地图_弹性云服务器 ECS_华为云。
4.1 创建主机
服务列表-> “计算”-> 弹性云服务器,
购买弹性云服务器
进入 购买界面
完成上述操作后,单击下一步,网络配置
点击创建控制台
点击创建虚拟私有云
可以使用默认参数,点击立即创建
然后返回网络配置页面
下一步:高级配置:
配置参数
点击立即购买
返回云服务器,查看当前状态,表示已创建并完成。
点击ecs-ed12->安全组->配置规则
点击方向规则->添加规则
填写协议端口
5.导入产品模型
接入物联网模块设备IOTA创建产品。
然后上传模型文件
6.配置智能路灯应用
注册成功后,我们可以使用以下内容MQTT收发设备饥饿命令。
7.智能灯的验证
打开模拟器。
查询设备接入服务中平台接入的地址MQTT需要在中间使用。
我们编辑设备标识号并注册它。
连接MQTT:填写IP地址、设备号、设备密钥。
填写上述信息后,单击以建立连接,您可以看到右侧日志打印MQTT服务连接成功。然后在设备连接中查看设备,显示在线。
接下来,我们发一个关灯的。MQTT消息,Topic如图。
然后考web页面灯已关闭,亮度值为200Lux.
订阅下图命令的主题。
因为以上我们的硬件订阅Topic,所以在web页面操作开关选择为关(当然状态为开),然后在模拟器可看接收到了一条开灯消息。
然后给模拟器Topic发送开关信息
Topic:
$oc/devices/61c2ed35078a93029b832a83_123456789f/sys/properties/report
开灯消息
{"services":[{"service_id":"Sensor","properties":{"luminance":"110","light_state":"ON"}}]}
此时web界面开灯,环境亮度为110LUX.
断开连接试试。
查看web页面设备状态,变成离线。
调光模式信息测试
总结
整个智能灯应用的构建,在IOT项目在平台上快速部署。IOT在平台下,变得很简单。