原文: http://www.hanselman.com/blog/ConnectingMyParticlePhotonInternetOfThingsDeviceToTheAzureIoTHub.aspx?winzoom=1

译者:Negan.L

向Azure 物联网中心连接particle photon网络设备

我的假期继续. 昨天我做了肩膀手术(肩关节冻结症).所以今天我对于Azune物联网中心很混乱. 我有一些设备放在我的桌子上-一些设备我从来没有真正探索过,我认为我会看一看如果我可以一些事情.

我之前得到了Particle Photon, 它等同于Tessel 2, LattePanda, Funduino, 和Onion Omega.一些日子之前我得到了 Onion Omega并用它来测我的血压并且显示在一块小的OLED屏幕上. 那很酷. 今晚,我将要尝试把Particle Photon在Azune物联网中心装好并接通电源用来监控.

Photon是一个微小的设备带有Wi-Fi模块.很容易安装并且它有一个基于云的带有非常多用c语言和Node.js写的例子的集成开发环境让你来使用.Particle Photon也有一个node.js的命令行.在那里你可以列举你的Photons,看到它们可用的函数,也可以叫做在互联网上的函数! 一个黑客的乐趣就在于此.

有一个叫做"blink an LED"的Hello world在Photon上. 它创造了一个云函数叫做”led”,约束于"ledToggle"方法. 那些云方法返回string参数,所以没有命令行开关的枚举类型 .

int led1 = D0;
int led2 = D7;
void setup() {
   pinMode(led1, OUTPUT);
   pinMode(led2, OUTPUT);
   Spark.function("led",ledToggle);
   digitalWrite(led1, LOW);
   digitalWrite(led2, LOW);
}
 
void loop() {
}
 
int ledToggle(String command) {
    if (command=="on") {
        digitalWrite(led1,HIGH);
        digitalWrite(led2,HIGH);
        return 1;
    }
    else if (command=="off") {
        digitalWrite(led1,LOW);
        digitalWrite(led2,LOW);
        return 0;
    }
    else {
        return -1;
    }
}

在命令行中我可以使用Particle命令行接口(CLI) 来枚举我的设备:

C:\Users\scott>particle list
hansel_photon [390039000647xxxxxxxxxxx] (Photon) is online
Functions:
int led(String args)

你看,它不仅仅可以枚举, 也能云方法关闭设备.我爱死这个方式了.

我可以从基于控制台的Particle Photon的云得到 API 密钥.他们使用我的设备ID和身份验证,我可以称作这个为方法…随着一个HTTP请求!做到如此是多么容易呀!

C:\Users\scott\>curl https://api.particle.io/v1/devices/390039000647xxxxxxxxx/led -d access_token=31fa2e6f --insecure -d arg="on"
{
  "id": "390039000647xxxxxxxxx",
  "last_app": "",
  "connected": true,
  "return_value": 1
}

在这个时刻,LED灯亮着则Particle Photon启动了.我正要去改变代码并且用Particle的在线代码编辑器添加一些遥测法.

他们做了一个非常棒的在线代码编辑器,但是我也可以在本地编辑和编译代码:

C:\Users\scott\Desktop>particle compile photon webconnected.ino

Compiling code for photon

Including:
webconnected.ino
attempting to compile firmware
downloading binary from: /v1/binaries/5858b74667ddf87fb2a2df8f
saving to: photon_firmware_1482209089877.bin
Memory use:
text data bss dec hex filename
6156 12 1488 7656 1de8
Compile succeeded.
Saved firmware to: C:\Users\scott\Desktop\photon_firmware_1482209089877.bin

我将会改变代码来声明一个事件当我打开LED的时候.

if (command=="on") {
    digitalWrite(led1,HIGH);
    digitalWrite(led2,HIGH);
     
    String data = "Amazing! Some Data would be here! The light is on.";
    Particle.publish("ledBlinked", data);
     
    return 1;
}

我重新回到 http://console.particle.io 看这些事件如何在网页上活着.

Particle也支持谷歌云和Azure物联网中心一体化.Azune物联网中心允许你管理数以亿万计的设备和数以亿万计的事件.我只做了一些事情,但是我们都要在一些地方开始.;)

我在我的Azure 帐号中创建了一个免费的Azure物联网中心…

为我的Particle设备做了一个共享访问政策.

在它们的集成系统中我被告知Particle关于Azure的事.

Azure物联网SDK在GitHub上的链接是 https://github.com/Azure/azure-iot-sdks/releases同时有a Windows-based Azure IoT Explorera command-line one called IoT Hub Explorer.

我从Azure Portal帐号使用连接字符串用登入物联网中心浏览器:

iothub-explorer login "HostName=HanselIoT.azure-devices.net;SharedAccessKeyName=particle-iot-hub;SharedAccessKey=rdWUVMXs="

之后我将会通过设备ID和共享访问政策的连接字符串运行"iothub-explorer monitor-events". Monitor-events很酷因为它将要搁置并且只是输出事件就好像他们正在流经整个系统.

所以我可以在Particle上使用他们的云呼叫方法, 以及从Azure物联网中心检测事件 . 我可以探索诊断数据以及查询巨大数量的设备到云的数据,潜在流入我的硬件设备.

物联网中心限制对于免费/爱好者 用户作为学习去发展是非常慷慨的.我到目前为止还没有支付任何钱.然而, 它可以按比例排列千万级短信每秒每单元!那意味着百万级信息传给你每秒,只要你需要.

我敢肯定我看到了物联网中心解决方案的价值就好像这在你在设备上得到一个以上的设备时将快速合计.文本文件不是真的估计.即使我只是用物联网连接我的房子,这也很好拥有所有数据流入一个我可以管理和私密查询的中心.

Connecting my Particle Photon Internet of Things device to the Azure IoT Hub(Translation)的更多相关文章

  1. Awesome Big Data List

    https://github.com/onurakpolat/awesome-bigdata A curated list of awesome big data frameworks, resour ...

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

    物联网技术已经火了很多年了,业界各大厂商都有各自成熟的解决方案.我们公司主要搞新能源汽车充电,充电桩就是我们物联网技术的最大应用,车联网.物联网. 互联网三网合一.作为Azure重要的Partner和 ...

  3. 微软提供的 Web 版 Raspberry Pi 模拟器

    https://docs.microsoft.com/en-gb/azure/iot-hub/iot-hub-raspberry-pi-web-simulator-get-started#overvi ...

  4. Azure IoT 技术研究系列1

    物联网技术已经火了很多年了,业界各大厂商都有各自成熟的解决方案.我们公司主要搞新能源汽车充电,充电桩就是我们物联网技术的最大应用,车联网.物联网. 互联网三网合一.作为Azure重要的Partner和 ...

  5. Microsoft IoT Starter Kit 开发初体验

    1. 引子 今年6月底,在上海举办的中国国际物联网大会上,微软中国面向中国物联网社区推出了Microsoft IoT Starter Kit ,并且免费开放1000套的申请.申请地址为:http:// ...

  6. Microsoft IoT Starter Kit 开发初体验-反馈控制与数据存储

    在上一篇文章<Microsoft IoT Starter Kit 开发初体验>中,讲述了微软中国发布的Microsoft IoT Starter Kit所包含的硬件介绍.开发环境搭建.硬件 ...

  7. 【物联网云端对接-1】 通过HTTP协议与微软Azure IoT hub进行云端通信

    在2015年曾写过一篇文章<从微软build 2015,展望微软未来发展>,提到了微软的Azure和Windows 10 IoT,那算是初次接触微软物联网技术.比较幸运的是在后续的时间里, ...

  8. Azure IoT 技术研究系列2-起步示例之设备注册到Azure IoT Hub

    上篇博文中,我们主要介绍了Azure IoT Hub的基本概念.架构.特性: Azure IoT 技术研究系列1-入门篇 本文中,我们继续深入研究,做一个起步示例程序:模拟设备注册到Azure IoT ...

  9. Azure IoT 技术研究系列3-设备到云、云到设备通信

    上篇博文中我们将模拟设备注册到Azure IoT Hub中:我们得到了设备的唯一标识. Azure IoT 技术研究系列2-设备注册到Azure IoT Hub 本文中我们继续深入研究,设备到云.云到 ...

随机推荐

  1. [原创]移动应用测试技术圈QQ群:211828629

    [原创]移动应用测试技术圈QQ群:211828629  移动应用测试技术圈QQ群:211828629,研究ios,android,winphone等平台测试技术,涉及功能/性能/安全/自动化/用户体验 ...

  2. HTML 邮件链接,超链接发邮件

    在网页中可以设置如“联系我们”.“问题反馈”等所谓的邮箱链接,类似网页超链接,只是可以直接打开默认邮箱程序. 使用<a href="mailto:youEMail@xxx.yyy&qu ...

  3. 翻译:微软style的并行计算

    Parallel Microsoft-Style By Andrew Binstock, July 20, 2011 Note:主要是自动翻译,俺做了小量修改 1 Comment The actor ...

  4. 【Android】android中Invalidate和postInvalidate的区别

    Android中实现view的更新有两组方法,一组是invalidate,另一组是postInvalidate,其中前者是在UI线程自身中使用,而后者在非UI线程中使用. Android提供了Inva ...

  5. j$(function() j$(document).ready 区别

    $j(document).ready(function(){}); // 或者  $j(function(){}); 第一个是直接使用Jquery调用function,第二个是在文档加载完毕后才去调用 ...

  6. 最详细的Linux YUM命令使用教程

    YUM(Yellow dog Updater, Modified)为多个Linux发行版的前端软件包管理器,例如 Redhat RHEL, CentOS & Fedora.  YUM通过调用R ...

  7. oratop 各个指标项说明

    Section 1- oratop and database/instance specifics spid       :oratop's server SPID connected to inst ...

  8. 参数传递的四种形式----- URL,超链接,js,form表单

    什么时候用GET,  查,删, 什么时候用POST,增,改  (特列:登陆用Post,因为不能让用户名和密码显示在URL上) 4种get传参方式 <html xmlns="http:/ ...

  9. 构造函数和:this()的应用

    一.构造函数和:this()的应用 //本实例演示构造函数和:this()的应用 public class ClsA { public string A{set;get;} public string ...

  10. 适合wordpress中文网站的seo优化插件 DX-Seo

    DX-Seo是一款强大的多功能wordpress seo插件,主要功能及其使用方法如下 全局开关设置 启动插件后,进入"DX-Seo"栏目,你可以开启或者关闭其中的所有功能. 自动 ...