很多时候,专业的事情都要交给专业的人来做,才会更放心。

例如买了套房,交房装修完毕,欢天喜地入住后,房子的日常养护和维护之类的事情,都由谁来负责呢?

物业呗~买了房子就自然需要房子所在小区提供的物业服务啦。

毕竟公共区域的维护和清洁、楼宇的日常保养、公共设施的故障修理和养护……没谁能比物业公司做的更好了,他们在人员、技能、经验等各方面都是专业的。最重要的是,你只需支付一些费用,就可以安心享受便捷周到的服务!

类似的情况出现了:你们公司最近基于 Azure IoT 技术新开发了一套物联网系统,经过小半个月的冲刺,整个系统已经顺利上线。但客户提出了一个新需求:既然你们还挺擅长的,干脆把这套系统的监控和后续维护工作也交给你们吧,快出个方案,没问题的话这就开始着手进行吧,要快哦~

这是要让物联网的建设者分分钟 Cosplay 成管家的节奏啊。内部分析发现,想要完美地完成专业的物联网后期监控和维护工作,你们需要:

  1. 开发一套远程监控系统;

  2. 提供一套将物联网边缘设备与监控系统连接在一起的机制;

  3. 通过监控系统集中采集设备数据;

  4. 分析采集到的数据,然后从中发现重要的信息;

  5. 速度!速度!!速度!!!

童鞋,既然你们的物联网本身就是基于 Azure IoT 技术构建的,那么你听说过 Azure IoT 套件中提供的预配置解决方案吗?

Azure IoT 套件预配置解决方案提供了一些常见的 IoT 解决方案,预配置的方案只需简单修改即可直接投入使用,快速满足用户的常见需求。目前 Azure IoT 套件提供了下列三个预配置解决方案:

接下来,我们一起看看如何通过「远程监视」这个预配置解决方案,为你的物联网系统请一个满是「英伦范儿」细致周到的管家。下文是使用 Node.js 作为开发语言,将物联网设备连接至 Azure IoT 套件中提供的远程监控预配置解决方案,借此把示例中创建的虚拟设备所采集的外部温度、内部温度,以及湿度信息发送到远程监视系统中,并将这些数据分析处理后现实在仪表板上。

一起按照步骤操作试试看吧。

准备工作

首先我们需要预配远程监视预配置解决方案,并在该解决方案中预配新的自定义设备。

如果尚未在 Azure 帐户中预配远程监视预配置解决方案,请执行下列操作:

  1. 在 https://www.azureiotsuite.cn/ 页上,单击「+」创建解决方案。

  2. 在「远程监视」面板上,单击「选择」创建解决方案。

  3. 在「创建远程监视解决方案」页上输入解决方案名称,选择部署到的区域,然后选择要使用的 Azure 订阅。

  4. 等待预配过程完成。                                                                                                                                                                                                                                        

    预配好远程监视解决方案后,单击「启动」,即可在浏览器中打开解决方案仪表板。                                                                                                                                          

    随后我们需要在远程监视方案中预配设备,为此请在解决方案仪表板中执行以下操作:

    1、在仪表板左下角,单击「添加设备」。                                                                                                                                                                                                             

    2、在「自定义设备」面板中单击「新增」。                                                                                                                                                                                                    

    3、选择「让我定义自己的设备 ID」,输入设备 ID(例如「mydevice」),单击「检查 ID」验证该名称是否尚未使用,然后单击「创建」预配设备。                                        

    4、记下设备凭据(设备 ID、IoT 中心主机名和设备密钥)。客户端应用程序需要这些值才能连接到远程监视解决方案。然后单击「完成」。

    5、在解决方案仪表板上的设备列表中选择设备。然后在「设备详细信息」面板中单击「启用设备」。设备状态现在为「正在运行」。至此远程监视解决方案已经可以从设备接收遥测数据,并在设备上调用方法。

    创建 Node.js 示例解决方案

    接下来我们需要使用 Node.js 创建示例解决方案。首先请确保已在开发计算机上安装 Node.js 0.11.5 版或更高版本。若要检查版本,可在命令行中运行 node –version。

    随后请执行下列操作:

    1、在开发计算机上创建名为 RemoteMonitoring 的文件夹,在命令行环境中导航到此文件夹。

    2、运行以下命令下载并安装完成示例应用所需的包:                                                                                                                                                                                       

    3、在 RemoteMonitoring 文件夹中,创建名为 remote_monitoring.js 的文件,在文本编辑器中打开此文件。

    4、在 remote_monitoring.js 文件中,添加以下 require 语句:                                                                                                                                                                          

    5、在 require 语句之后添加以下变量声明。将占位符值[Device Id] 和[Device Key]替换为在远程监控解决方案仪表板中记下的设备值。使用解决方案仪表板中的 IoT 中心主机名替换[IoTHub Name]。例如,如果 IoT中心主机名是 contoso.azure-devices.net,则将 [IoTHub Name] 替换为 contoso:                                                                    

    6、添加以下变量用于定义一些基本遥测数据:                                                                                                                                                                                                  

    13、添加以下代码用于创建客户端实例:

    14、添加以下代码来执行下述操作:

    • 打开连接

    • 发送 DeviceInfo 对象

    • 设置所需属性的处理程序

    • 发送报告的属性

    • 为直接方法注册处理程序

    • 开始发送遥测数据

    • NodeJS                                                                                                                                                                                                                                                    

    5、设备处理方法时,运行设备代码的控制台中会显示消息。方法的结果将添加到解决方案门户中的历史记录:                                                                                                

    就酱,不需要太多额外的工作就可以创建预配置的解决方案,并根据实际情况简单调整,快速将设备连接到远程监控系统中。你 get 了吗?

    如果你在创建预配置解决方案时遇到还没有解决的问题,可以在文章底部留言给我哦~立即访问http://market.azure.cn

Node.js | 你的物联网系统,有个管家待认领的更多相关文章

  1. Node.js 教程 04 - 模块系统

    前言: Node.js的模块系统类似于C/C++的文件引用,可以声明对象,也可以定义类 创建对象. 大家这么理解,就简单了. 定义: 为了让Node.js的文件可以相互调用,Node.js提供了一个简 ...

  2. NodeBB – 基于 Node.js 的开源论坛系统

    NodeBB 是一个更好的论坛平台,专门为现代网络打造.它是免费的,易于使用. NodeBB 论坛软件是基于 Node.js 开发,支持 Redis 或 MongoDB 的数据库.它利用 Web So ...

  3. node.js开发博客系统---前端项目搭建(一)

    Express: https://github.com/petecoop/generator-express 安装node.js和npm 执行: npm install -g yo npm insta ...

  4. Node.js(二)常用的系统模块

    http模块 第一章已经介绍了 node.js 的模块都可以传一个回调函数  回调函数支持两个参数  error , data let fs = require('fs'); fs.readFile( ...

  5. Node.js开发博客系统

    数据库设计 用户表: id phone password nickname head_img personal_sign level_id create_time update_time is_del ...

  6. node.js 开发博客系统

    1. 安装yoman :npm install -g yo 2. 安装 generator-express :npm install -g generator-express 3. 安装 bower ...

  7. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

  8. 提升node.js中使用redis的性能

    问题初现 某基于node.js开发的业务系统向外提供了一个dubbo服务,提供向第三方缓存查询.设置多项业务数据并聚合操作结果.在QPS达到800时(两台虚拟机,每台机器4Core8G4node进程) ...

  9. Jenkins 配置 Node.js 项目

    开始 弄清楚 Jenkins 服务器 用 Jenkins 管理员账号下载 NodeJS Plugin 系统管理 ---> 全局工具配置 ---> NodeJS ---> 安装 --- ...

随机推荐

  1. Entity Framework Code-First(6):Database Initialization

    Database Initialization: We have seen that Code First creates a database automatically in the Simple ...

  2. SpringMVC的国际化

    关于SpringMVC的国际化,http://www.cnblogs.com/liukemng/p/3750117.html这篇文章已经讲的很好了.它讲了有如下几种国际化方式 1:基于Http的hea ...

  3. C#中类和结构体

    结构体 类 自己的一些理解 首先结构中不能给字段赋值  而类可以 结构调用方法是  例如 People p1: 类的调用方法是  Book b =new Book(): 1.类能够实例化 而结构不可以 ...

  4. PTA 1045【DP】

    思路: DP[ i ] 代表以值 i 结尾的当前最长长度. 每次枚举序列数组,dp[ i ] = max( dp[ i ] ,dp[ a[j] ] + 1); #include <bits/st ...

  5. HyperLedger Explore 浏览器配置启动教程

    Hyperledger Fabric维护的实际上是一个区块链网络.为了能够直观的观察网络上的节点,交易等行为,Hyperledger Explore随之诞生. 本文讲述如何搭建 Hyperledger ...

  6. bzoj2229: [Zjoi2011]最小割(最小割树)

    传送门 这题是用最小割树做的(不明白最小割树是什么的可以去看看这一题->这里) 有了最小割树就很简单了……点数那么少……每次跑出一个最大流就暴力搞一遍就好了 //minamoto #includ ...

  7. docker常用到的一些命令

    docker ps 1. docker ps -a(显示所有的容器,包括未运行的) 2.docker ps -q (只显示ip) 3. docker ps -f(根据条件过滤显示的内容) docker ...

  8. 记录一个直接操作mediawiki数据库遇到的坑

    我的mediawiki使用的是postgresql数据库,当你进入到mediawiki数据库时,运行sql select * from pg_tables; 你会发现mediawiki的数据表的sch ...

  9. (转)CentOS 6下配置软RAID图文详解

    CentOS 6下配置软RAID图文详解 原文:http://blog.51cto.com/hujiangtao/1929620 一.RAID 简介 RAID 是英文Redundant Array o ...

  10. Hive项目实战:用Hive分析“余额宝”躺着赚大钱背后的逻辑

    一.项目背景 前两年,支付宝推出的“余额宝”赚尽无数人的眼球,同时也吸引的大量的小额资金进入.“余额宝”把用户的散钱利息提高到了年化收益率4.0%左右,比起银行活期存储存款0.3%左右高出太多了,也正 ...