Azure IoT 技术研究系列2-设备注册到Azure IoT Hub

上篇博文中,我们主要介绍了Azure IoT Hub的基本概念、架构、特性:

Azure IoT 技术研究系列1-入门篇

本文中,我们继续深入研究,做一个起步示例程序:模拟设备注册到Azure IoT Hub, 设备到云通信,云到设备通信。

整体篇幅较大,我们先来第一步:将模拟设备注册到Azure IoT Hub。

首先,我们需要有一个联网的设备,例如树莓派、Win10 IoT设备等等,只要能联网,Azure IoT Hub有编程SDK即可,为了方便演示,本篇中我们做了一个模拟设备:

TeldPile001,即001号充电桩。

然后,在正式编码前,需要我们在Azure New Portal中,添加自己的IoT Hub.

输入名称后,选择定价和缩放级别,这里我们做测试,使用免费的F1即可,同时新建资源组。

创建完成后,IoTTest即可使用了。

使用前,我们需要确定两个重要的连接配置:主机名和连接字符串,我们选择“概述”,右侧有个主机名,先复制下来备用。

然后选择共享访问策略:

将连接字符串-主秘钥,复制保存下来备用。

开始编码吧,我们创建一个Console工程叫做“RegisterDevice”,用于设备注册到Azure IoT Hub。同时添加重要的Nuget引用:

Microsoft.Azure.Devices

本文测试用的:<package id="Microsoft.Azure.Devices" version="1.2.4" targetFramework="net451" />

两个核心的Namespace:

using Microsoft.Azure.Devices;
using Microsoft.Azure.Devices.Common.Exceptions;

核心类:Microsoft.Azure.Devices.RegistryManager:设备注册管理器

我们设计一个方法,添加或者获取设备信息:

 1         /// <summary>
 2         /// 添加或获取设备信息
 3         /// </summary>
 4         /// <returns>Task</returns>
 5         private static async Task AddOrGetDeviceAsync()
 6         {
 7             string deviceId = "TeldPile001";
 8             Device device;
 9             try
10             {
11                 device = await registryManager.AddDeviceAsync(new Device(deviceId));
12             }
13             catch (DeviceAlreadyExistsException)
14             {
15                 device = await registryManager.GetDeviceAsync(deviceId);
16             }
17
18             Console.WriteLine("生成设备标识: {0}", device.Authentication.SymmetricKey.PrimaryKey);
19         }

Main函数:

1         static void Main(string[] args)
2         {
3             var connectionString = "HostName=IoTTest.***-***;SharedAccessKeyName=iothubowner;SharedAccessKey=******";
4             var registryManager = RegistryManager.CreateFromConnectionString(connectionString);
5             AddOrGetDeviceAsync().Wait();
6             Console.ReadLine();
7         }

Run,

可以看到,TeldPile001这个设备已经注册到我们自己的Azure IoT Hub中了。

以上便是,将设备注册到Azure IoT Hub的介绍,不复杂,微软的设计还是比较赞的,简单、快速、易用。

下一篇我们继续研究设备到云、云到设备的通信。

周国庆

2014/4/16

时间: 2024-10-26 01:56:36

Azure IoT 技术研究系列2-设备注册到Azure IoT Hub的相关文章

Azure IoT 技术研究系列5-Azure IoT Hub与Event Hub比较

上篇博文中,我们介绍了Azure IoT Hub的使用配额和缩放级别: Azure IoT 技术研究系列4-Azure IoT Hub的配额及缩放级别 本文中,我们比较一下Azure IoT Hub和Event Hub,同时启动Azure Event Hub(事件中心)的研究. Azure IoT Hub的另一个主要应用场景是从设备侧接收遥测数据. 与 Azure IoT Hub一样,Azure Event Hub是一个事件处理服务,主要用于向云端提供大规模的事件与遥测数据入口,并且具有较低的延

Azure IoT 技术研究系列1-入门篇

物联网技术已经火了很多年了,业界各大厂商都有各自成熟的解决方案.我们公司主要搞新能源汽车充电,充电桩就是我们物联网技术的最大应用,车联网.物联网. 互联网三网合一.作为Azure重要的Partner和使用者,我们对Azure的IoT方案也是非常期待的,因此,最近计划研究一下Azure的IoT技术,同时将研究的成果分享给大家. 以本文作为IoT入门的第一篇吧. IoT:Internet of Things,即连接一切. Azure提供了Azure IoT Hub:直译为Azure的物联网中心. A

Azure IoT 技术研究系列1

物联网技术已经火了很多年了,业界各大厂商都有各自成熟的解决方案.我们公司主要搞新能源汽车充电,充电桩就是我们物联网技术的最大应用,车联网.物联网. 互联网三网合一.作为Azure重要的Partner和使用者,我们对Azure的IoT方案也是非常期待的,因此,最近计划研究一下Azure的IoT技术,同时将研究的成果分享给大家. 以本文作为IoT入门的第一篇吧. IoT:Internet of Things,即连接一切. Azure提供了Azure IoT Hub:直译为Azure的物联网中心. A

Azure Stack技术深入浅出系列3: Azure Stack运维工具Azure Stack Tools的使用及实战

源自 Azure 的 Azure stack 作为一款业界唯一的和领先的公有云平台一致的混合云平台,能够帮助企业客户从自有数据中心交付 Azure 云服务.作为<Azure Stack 技术深入浅出系列>的第三篇文章,本文将介绍 Azure Stack 部署完成以后,如何快速的管理和维护这套系统环境,包括虚拟机的管理.远程 VPN 连接.传输部署镜像.远程监控等.本文将通过一套 Azure Stack 运维工具集--Azure Stack Tools 来尝试使用和管理 Azure Stack

Azure Stack技术深入浅出系列1:Azure Stack与Azure的有QoS保证的网络联通实现方法和对比测试

源自Azure的Azure stack作为一款业界唯一的和领先的公有云平台一致的混合云平台,能够帮助企业客户从自有数据中心交付Azure云服务.它作为微软混合云战略中的重头戏,官方宣称其将在今年年中GA了.上海仪电集团高度重视这一产品,同时成立了一个专门的团队来跟踪最新的Azure Stack技术动态并积极推动Azure Stack在中国落地.在今后一段时间内容,我们将在过去一年间追踪Azure Stack的技术内容汇总为Azure Stack技术深入浅出系列文章分享给对微软混合云产品感兴趣的相

Ngnix技术研究系列2-基于Redis实现动态路由

上篇博文我们写了个引子: Ngnix技术研究系列1-通过应用场景看Nginx的反向代理 发现了新大陆,OpenResty OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库.第三方模块以及大多数的依赖项.用于方便地搭建能够处理超高并发.扩展性极高的动态 Web 应用.Web 服务和动态网关. OpenResty 通过汇聚各种设计精良的 Nginx 模块(主要由 OpenResty 团队自主开发),从而将 Nginx 有效地变成一个强

阿里云 IOT 对接设备开发 C# 开发设备对接阿里云 IOT平台

原文:阿里云 IOT 对接设备开发 C# 开发设备对接阿里云 IOT平台 一,创建阿里云 IOT 产品.设备 目前阿里云每月赠送 100 万条流量,可以免费使用基础版.高级版,开通后即可免费使用. 阿里云 IOT 平台地址 https://iot.console.aliyun.com/product 登陆开通后,新建测试产品.设备. 创建产品 产品的定义是,一类硬件.功能.外形完全相同的设备.所以,添加一个产品后,我们就可以在此类别下添加成千上万个设备. 下面的信息要选.设备.非网关,原因后面说

Azure Stack技术深入浅出系列5:在Azure Stack上使用Web App PaaS服务及其背后原理窥探(开发案例)

App Service 是微软Azure的PaaS产品. 为任何平台或设备创建Web App PaaS服务和mobile App PaaS服务. 将应用与SaaS解决方案集成.与本地应用程序进行连接,以实现业务流程的自动化.在我们日常开发中,经常会使用Web App PaaS服务来承载企业的业务. 本文试图通过一个案例来分别详细说明Azure Web App业务的下列几大特点: 应用服务计划 多种语言和框架 持续集成和部署 连接数据库服务 可用性全局缩放 就在本文撰写过程中,Azure Stac

Azure Stack技术深入浅出系列2:谈Azure Stack在私有云/混合云生态中的定位

一. 国内私有云业务前景 就在今年4月,工信部发布<云计算发展三年行动计划(2017-2019)>,提出2019年云计算产业规模将达到4300亿.云计算已成为国家新一代信息产业发展的重要战略.从中国整个IT投入来看,政府.央企.国企以及大型民企占据主要份额,这些企业都意图拥抱云计算以提升生产力,但出于安全的考虑,又暂时对公有云有所顾忌.因此未来几年,私有云业务仍然会占据中国大部分市场份额. 根据Right Scale发布的<2017 State of the CloudSurvey>